Защищаем email от ботов

В wordpress, в файле wp-includes/formatting.php есть замечательная функция:

/**
 * Converts email addresses characters to HTML entities to block spam bots.
 *
 * @since 0.71
 *
 * @param string $emailaddy Email address.
 * @param int $mailto Optional. Range from 0 to 1. Used for encoding.
 * @return string Converted email address.
 */
function antispambot($emailaddy, $mailto=0) {
	$emailNOSPAMaddy = '';
	srand ((float) microtime() * 1000000);
	for ($i = 0; $i < strlen($emailaddy); $i = $i + 1) {
		$j = floor(rand(0, 1+$mailto));
		if ($j==0) {
			$emailNOSPAMaddy .= '&#'.ord(substr($emailaddy,$i,1)).';';
		} elseif ($j==1) {
			$emailNOSPAMaddy .= substr($emailaddy,$i,1);
		} elseif ($j==2) {
			$emailNOSPAMaddy .= '%'.zeroise(dechex(ord(substr($emailaddy, $i, 1))), 2);
		}
	}
	$emailNOSPAMaddy = str_replace('@','@',$emailNOSPAMaddy);
	return $emailNOSPAMaddy;
}

Она служит для защиты от спама электронных адресов, публикуемых в явном виде. Для ее использования в блоге, нужно использовать следующую конструкцию:

<a href="mailto:">Mail Me

В итоге мы получаем:

Mail

Основано на этом: http://en.wikipedia.org/wiki/HTML_entities

3 Комментарии

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*