PHP Email Address Encoder
April 4th, 2007
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!
This small PHP function will give you an easy way to encode any email address using Character Entities. Just supply the function call with an email address and get the encoded version returned. Most any browser will properly read and translate your email without a problem and without any further action on your part.
Just make a nice call to the function whenever you want to show your email. Such as...
-
<a href="mailto:<?php encode_email('you@yourdomain.com'); ?>"><?php encode_email('you@yourdomain.com'); ?></a>
Here's the function code:
-
<?php
-
function encode_email($email) {
-
//transform email to lowercase
-
//separate characters of email into an array
-
// str_split() only available in PHP 5
-
$email = str_split($email);
-
//loop through string and encode as necessary
-
foreach($email as $ekey => $evalue) {
-
switch($evalue) {
-
case 'a':
-
$encoded_email .= "a";
-
break;
-
case 'b':
-
$encoded_email .= "b";
-
break;
-
case 'c':
-
$encoded_email .= "c";
-
break;
-
case 'd':
-
$encoded_email .= "d";
-
break;
-
case 'e':
-
$encoded_email .= "e";
-
break;
-
case 'f':
-
$encoded_email .= "f";
-
break;
-
case 'g':
-
$encoded_email .= "g";
-
break;
-
case 'h':
-
$encoded_email .= "h";
-
break;
-
case 'i':
-
$encoded_email .= "i";
-
break;
-
case 'j':
-
$encoded_email .= "j";
-
break;
-
case 'k':
-
$encoded_email .= "k";
-
break;
-
case 'l':
-
$encoded_email .= "l";
-
break;
-
case 'm':
-
$encoded_email .= "m";
-
break;
-
case 'n':
-
$encoded_email .= "n";
-
break;
-
case 'o':
-
$encoded_email .= "o";
-
break;
-
case 'p':
-
$encoded_email .= "p";
-
break;
-
case 'q':
-
$encoded_email .= "q";
-
break;
-
case 'r':
-
$encoded_email .= "r";
-
break;
-
case 's':
-
$encoded_email .= "s";
-
break;
-
case 't':
-
$encoded_email .= "t";
-
break;
-
case 'u':
-
$encoded_email .= "u";
-
break;
-
case 'v':
-
$encoded_email .= "v";
-
break;
-
case 'w':
-
$encoded_email .= "w";
-
break;
-
case 'x':
-
$encoded_email .= "x";
-
break;
-
case 'y':
-
$encoded_email .= "y";
-
break;
-
case 'z':
-
$encoded_email .= "z";
-
break;
-
case '0':
-
$encoded_email .= "0";
-
break;
-
case '1':
-
$encoded_email .= "1";
-
break;
-
case '2':
-
$encoded_email .= "2";
-
break;
-
case '3':
-
$encoded_email .= "3";
-
break;
-
case '4':
-
$encoded_email .= "4";
-
break;
-
case '5':
-
$encoded_email .= "5";
-
break;
-
case '6':
-
$encoded_email .= "6";
-
break;
-
case '7':
-
$encoded_email .= "7";
-
break;
-
case '8':
-
$encoded_email .= "8";
-
break;
-
case '9':
-
$encoded_email .= "9";
-
break;
-
case '&':
-
$encoded_email .= "&";
-
break;
-
case ' ':
-
$encoded_email .= " ";
-
break;
-
case '_':
-
$encoded_email .= "_";
-
break;
-
case '-':
-
$encoded_email .= "-";
-
break;
-
case '@':
-
$encoded_email .= "@";
-
break;
-
case '.':
-
$encoded_email .= ".";
-
break;
-
}
-
}
-
//echo encoded email
-
echo $encoded_email;
-
}
-
?>