标签 百度 下的文章

PHP通过访客来路获取搜索关键词的方法


今天闲的无聊写了一个通过来路获取关键词的类,目前支持百度、谷歌、搜搜和搜狗。不多说了。直接上源码吧。

 -1 ){
			$keyword = $this->getbaidukeyword($referer);
		}else if(strpos($referer,"http://www.google.com")> -1 ){
			$keyword = $this->getgooglekeyword($referer);
		}else if(strpos($referer,"http://www.soso.com")> -1 ){
			$keyword = $this->getsosokeyword($referer);
		}else if(strpos($referer,"http://www.sogou.com")> -1 ){
			$keyword = $this->getsogoukeyword($referer);
		}
		
		return $keyword;
	}
	
	//由来路取得百度关键词
	private function getbaidukeyword($str){
		$s = strpos($str,'wd=');
		if($s>-1){
			$str = substr($str,$s+3);
			$e = strpos($str,'&');
			if($e>-1){
				$str = substr($str,0,$e);
			}
			$str = rawurldecode($str);
		}
		return $str;
	}
	//获得谷歌关键词
	private function getgooglekeyword($str){
		$s = strpos($str,'&q=');
		if($s>-1){
			$str = substr($str,$s+3);
			$e = strpos($str,'&');
			if($e>-1){
				$str = substr($str,0,$e);
			}
			$str = rawurldecode($str);
		}
		return $str;
	}
	//获得SOSO关键词
	private function getsosokeyword($str){
		$s = strpos($str,'?w=');
		if($s>-1){
			$str = substr($str,$s+3);
			$e = strpos($str,'&');
			if($e>-1){
				$str = substr($str,0,$e);
			}
			$str = rawurldecode($str);
		}else{
			$s = strpos($str,'&w=');
			if($s>-1){
				$str = substr($str,$s+3);
				$e = strpos($str,'&');
				if($e>-1){
					$str = substr($str,0,$e);
				}
				$str = rawurldecode($str);
			}
		}
		return $str;
	}
	//获得sogou关键词
	private function getsogoukeyword($str){
		$s = strpos($str,'query=');
		if($s>-1){
			$str = substr($str,$s+6);
			$e = strpos($str,'&');
			if($e>-1){
				$str = substr($str,0,$e);
			}
			$str = rawurldecode($str);
		}
		return $str;
	}
}
?>

最后也附上下载地址方便懒人
getKeyword.class.php