PHP:搜索字符串中的重合处
我想过滤访问者从搜索引擎访问我的网站的 HTTP_REFERER。我想忽略为来自搜索引擎的访问者存储 HTTP_REFERER 信息。您能帮忙编写一下 PHP 脚本吗?
我有这个,但不正确的脚本:
<?
$exp_list = array('google', 'yahoo');
// exapmple of one HTTP_REFERER link from the Goggle search engine
$link = 'http://www.google.com/search?hl=ru&source=hp&q=bigazart&aq=f&aqi=&aql=&oq=&gs_rfai=';
for ($j = 0; $j < sizeof($exp_list); $j++){
if(!eregi($exp_list[$j], $link)){
// storing link to mysql...
break;
}
}
?>
I would like to filter HTTP_REFERER where visitors come to my site from search engines. I want to ignore storing HTTP_REFERER information for the visitors came from the search engines. Could you please help with the PHP script?
I have this, but not correct script:
<?
$exp_list = array('google', 'yahoo');
// exapmple of one HTTP_REFERER link from the Goggle search engine
$link = 'http://www.google.com/search?hl=ru&source=hp&q=bigazart&aq=f&aqi=&aql=&oq=&gs_rfai=';
for ($j = 0; $j < sizeof($exp_list); $j++){
if(!eregi($exp_list[$j], $link)){
// storing link to mysql...
break;
}
}
?>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试这样的事情:
重要的事情:
$_SERVER['HTTP_REFERER']
是否存在parse_url
从 URL 获取主机并仅在那里搜索但这仍然会错误地识别像 www.google.example 这样的主机。 com。因此您可能还想指定顶级/二级域名。
Try something like this:
The important things:
$_SERVER['HTTP_REFERER']
exists or notparse_url
to get the host from the URL to only search thereBut this will still falsely identify a host like www.google.example.com. So you might also want to specify the top/second level domain names.
您应该能够自定义以下模式以匹配更多域。
You should be able to customize the patterns below to match more domains.