php实现判断访问来路是否为搜索引擎机器人的方法

 更新时间:2015年04月15日 11:39:30   作者:任侠  
这篇文章主要介绍了php实现判断访问来路是否为搜索引擎机器人的方法,主要通过过滤$_SERVER['HTTP_USER_AGENT'] 参数来实现这一功能,非常简单实用,需要的朋友可以参考下

本文实例讲述了php实现判断访问来路是否为搜索引擎机器人的方法。分享给大家供大家参考。具体分析如下:

很多时候我们需要对网站访客来路进行识别,针对真实用户与搜索引擎作不同动作实现,那么首先就需要判断是否为搜索引擎。

php判断方法非常简单,通过过滤$_SERVER['HTTP_USER_AGENT'] 参数即可进行识别,以下是摘录某开源程序的相关源码:

private function getRobot()
{
 if (empty($_SERVER['HTTP_USER_AGENT']))
 {
  return false;
 }
 $searchEngineBot = array(
  'googlebot'=>'google',
  'mediapartners-google'=>'google',
  'baiduspider'=>'baidu',
  'msnbot'=>'msn',
  'yodaobot'=>'yodao',
  'youdaobot'=>'yodao',
  'yahoo! slurp'=>'yahoo',
  'yahoo! slurp china'=>'yahoo',
  'iaskspider'=>'iask',
  'sogou web spider'=>'sogou',
  'sogou push spider'=>'sogou',
  'sosospider'=>'soso',
  'spider'=>'other',
  'crawler'=>'other',
 );
 $spider = strtolower($_SERVER['HTTP_USER_AGENT']);
 foreach ($searchEngineBot as $key => $value)
 { 
  if (strpos($spider, $key)!== false)
  {
   return $value;
  }
 }
 return false;
}
public function isRobot()
{
 if($this->getRobot()!==false)
 {
  return true;
 }
 return false;
}

希望本文所述对大家的php程序设计有所帮助。

相关文章

  • php基于环形链表解决约瑟夫环问题示例

    php基于环形链表解决约瑟夫环问题示例

    这篇文章主要介绍了php基于环形链表解决约瑟夫环问题,结合具体实例形式分析了php环形链表的定义及基于环形链表解决约瑟夫环的具体步骤与相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • php检索或者复制远程文件的方法

    php检索或者复制远程文件的方法

    这篇文章主要介绍了php检索或者复制远程文件的方法,涉及php使用copy函数操作文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • 部署PHP项目应该注意的几点事项分享

    部署PHP项目应该注意的几点事项分享

    这篇文章主要介绍了部署PHP项目应该注意的几点事项,有需要的朋友可以参考一下
    2013-12-12
  • php实现动态口令认证的示例代码

    php实现动态口令认证的示例代码

    这篇文章主要为大家详细介绍了php实现动态口令认证的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • PHP跳转页面的几种实现方法详解

    PHP跳转页面的几种实现方法详解

    本篇文章是对PHP跳转页面的几种实现方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP mkdir()定义和用法

    PHP mkdir()定义和用法

    mkdir() 函数创建目录。若成功,则返回 true,否则返回 false。
    2009-01-01
  • php反弹shell实现代码

    php反弹shell实现代码

    遇到一个BT的网站,上传php文件成功之后,每访问一次,文件名就会随机改变一次,并且你访问当前文件如果点其他操作项,文件仍然会改名。
    2009-04-04
  • php验证码生成器

    php验证码生成器

    这篇文章主要为大家详细介绍了php验证码生成器的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法

    PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法

    在php5的环境中我们的$_SERVER变量将不再受magic_quotes_gpc的保护,至于程序该如何加强自己的安全性,下面我们总结了怎么保护php中的cookie,get,post,files数据哦,有需要的朋友可参考一下
    2012-10-10
  • PHP栈的定义、入栈出栈方法及基于堆栈实现的计算器完整实例

    PHP栈的定义、入栈出栈方法及基于堆栈实现的计算器完整实例

    这篇文章主要介绍了PHP栈的定义、入栈出栈方法及基于堆栈实现的计算器,结合实例形式较为详细的分析了php定义与使用栈的基本方法,并结合完整实例形式给出了php基于堆栈实现高级计算器功能的相关操作技巧,需要的朋友可以参考下
    2017-11-11

最新评论