ホームページ >バックエンド開発 >PHPチュートリアル >PHP はスパム プログラムによる収集を防ぐために電子メール アドレスをエンコードします

PHP はスパム プログラムによる収集を防ぐために電子メール アドレスをエンコードします

WBOY
WBOYオリジナル
2016-06-20 13:03:051588ブラウズ

PHP でエンコードされたメール アドレス

次のコードは、スパマーによる収集を防ぐために、任意の電子メール アドレスを HTML 文字エンティティにエンコードできます。

function encode_email($email='info@domain.com', $linkText='Contact Us', $attrs ='class="emailencoder"' )  
{  
    // remplazar aroba y puntos  
    $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&#39;;  
    $part2 = &#39;ilto:&#39;;  
    $part3 = &#39;" &#39;. $attrs .&#39; >';  
    $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;  
} 


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。