我从css-tricks.com(链接)找到了这个不错的电子邮件保护程序脚本
这是代码:
<?php
function php_split_js_make_email($phpemail)
{
$pieces = explode("@", $phpemail);
echo '
<script type="text/javascript">
var a = "<a href=''mailto:";
var b = "' . $pieces[0] . '";
var c = "' . $pieces[1] .'";
var d = "'' class=''email''>";
var e = "</a>";
document.write(a+b+"@"+c+d+b+"@"+c+e);
</script>
<noscript>Please enable JavaScript to view emails</noscript>
';
}
?>
使用
<?php php_split_js_make_email("youremail@here.com"); ?>
现在我想知道这个代码今天有多安全,因为这个帖子已经有一年多的历史了。。。
感谢
只有在探查页面电子邮件地址的机器人不执行JavaScript的情况下,脚本才是安全的。
在我的个人网站上,我将我的电子邮件地址嵌入为图像,并使用在线表单发送邮件,而不是mailto链接。
我想你想防止机器人获取电子邮件地址?那么可能不会。越来越多的抓取器能够执行javascript代码,像phantomjs这样的工具可以轻松地抓取javascript网站的内容。
一般来说,您应该尽量不要公开此类数据。访问您页面的人中有多少人对该地址感兴趣?
考虑为这些人添加某种身份验证检查,如captcha或登录过程。或者反过来说:不要向所有人展示你不想抓取的敏感数据。请记住,没有100%的防刮保护。哦,当使用captchas时,请使用一些合理的东西!我敢打赌大多数机器人都能比我更好地解决重新验证服务。。。在很多情况下,你只需回答一组非常基本的"常识"问题就可以了。