php获取搜索引擎入站关键词的函数

发布时间:2020-11-20编辑:脚本学堂
本文介绍下,一段可以获取搜索引擎入站关键词的代码,有需要的朋友参考下。

代码如下:

<?php
//*
* 获取来自搜索引擎入站关键词
* edit by www.jb200.com
*/
function get_keyword($url,$kw_start)//函数作用:从url中提取关键词。参数说明:url及关键词前的字符。
{
 $start=stripos($url,$kw_start);
 $url=substr($url,$start+strlen($kw_start));
 $start=stripos($url,'&');
  if ($start>0)
  {
   $start=stripos($url,'&');
   $s_s_keyword=substr($url,0,$start);
  }
  else 
  {
  $s_s_keyword=substr($url,0);
  }
 return $s_s_keyword;
}
$url=isset($_SERVER['HTTP_REFERER'])?$_SERVER['HTTP_REFERER']:'';//获取入站url。
$search_1="google.com"; //q=
$search_2="baidu.com"; //wd=

$google=preg_match("/b{$search_1}b/",$url);//记录匹配情况,用于入站判断。
$baidu=preg_match("/b{$search_2}b/",$url);
$s_s_keyword="";
 if ($google)
 {//来自google
  $s_s_keyword=get_keyword($url,'q=');//关键词前的字符为“q=”。
  $s_s_keyword=urldecode($s_s_keyword);
  //$s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//引擎为gbk
 }
 else if($baidu)
 {//来自百度
  $s_s_keyword=get_keyword($url,'wd=');//关键词前的字符为“wd=”。
  $s_s_keyword=urldecode($s_s_keyword);
  $s_s_keyword=iconv("GBK","UTF-8",$s_s_keyword);//引擎为gbk
 }
 
echo '$s_s_keyword';
?>

代码说明:
1,注意字符编码的问题,因为不同的搜索引擎可能返回的编码格式不同。
2,功能更全的函数,可以参考这篇:获取搜索引擎关键词来源