当前位置:首页 > PHP教程 > php应用 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-22 15:27:01 浏览: 评论:0 

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

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

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

  1. private function getRobot() 
  2. { 
  3.  if (emptyempty($_SERVER['HTTP_USER_AGENT'])) 
  4.  { 
  5.   return false; 
  6.  } 
  7.  $searchEngineBot = array( 
  8.   'googlebot'=>'google', 
  9.   'mediapartners-google'=>'google', 
  10.   'baiduspider'=>'baidu', 
  11.   'msnbot'=>'msn', 
  12.   'yodaobot'=>'yodao', 
  13.   'youdaobot'=>'yodao', 
  14.   'yahoo! slurp'=>'yahoo', 
  15.   'yahoo! slurp china'=>'yahoo', 
  16.   'iaskspider'=>'iask', 
  17.   'sogou web spider'=>'sogou', 
  18.   'sogou push spider'=>'sogou', 
  19.   'sosospider'=>'soso', 
  20.   'spider'=>'other', 
  21.   'crawler'=>'other', 
  22.  ); 
  23.  $spider = strtolower($_SERVER['HTTP_USER_AGENT']); 
  24.  foreach ($searchEngineBot as $key => $value) 
  25.  {  
  26.   if (strpos($spider, $key)!== false) 
  27.   { 
  28.    return $value; 
  29.   } 
  30.  } 
  31.  return false; 
  32. } 
  33. public function isRobot() 
  34. { 
  35.  if($this->getRobot()!==false) 
  36.  { 
  37.   return true; 
  38.  } 
  39.  return false; 
  40. } 

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

Tags: php搜索引擎机器人

分享到: