现在很多垃圾邮件程序会自动采集网上的email地址,然后成为发送垃圾邮件对象,为了避免成为被“攻击”的对象,我们可通过以下函数来转换Emai地址为隐藏链接,也就是把直白的Email地址变成锚文本+mailto链接的形式,有效避免被采集。
<?php
function encode_email($email='123456info@qq.com', $linkText='Contact', $attrs ='class="emailencoder"' )
{
$email = str_replace('@', '@', $email);
$email = str_replace('.', '.', $email);
$email = str_split($email, 5);
$linkText = str_replace('@', '@', $linkText);
$linkText = str_replace('.', '.', $linkText);
$linkText = str_split($linkText, 5);
$part1 = '<a href="ma';
$part2 = 'ilto:';
$part3 = '" '. $attrs .' >';
$part4 = '</a>';
$encoded = '<script type="text/javascript">';
$encoded .= "document.write('$part1');";
$encoded .= "document.write('$part2');";
foreach($email as $e)
{
$encoded .= "document.write('$e');";
}
$encoded .= "document.write('$part3');";
foreach($linkText as $l)
{
$encoded .= "document.write('$l');";
}
$encoded .= "document.write('$part4');";
$encoded .= '</script>';
return $encoded;
}
?>使用方法挺简便的,也就是在需要显示邮件的时候,调用本函数
echo encode_email();

