php获取从百度、谷歌等搜索引擎进入网站关键词的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php获取从百度、谷歌等搜索引擎进入网站关键词的方法。分享给大家供大家参考。具体实现方法如下:

<?php
function search_word_from() {
 $referer = isset($_SERVER['HTTP_REFERER'])?$_SERVER['HTTP_REFERER']:'';
 if(strstr( $referer, 'baidu.com')){ //百度
  preg_match( "|baidu.+wo?r?d=([^\\&]*)|is", $referer, $tmp );
  $keyword = urldecode( $tmp[1] );
  $from = 'baidu';
 }elseif(strstr( $referer, 'google.com') or strstr( $referer, 'google.cn')){ //谷歌
  preg_match( "|google.+q=([^\\&]*)|is", $referer, $tmp );
  $keyword = urldecode( $tmp[1] );
  $from = 'google';
 }elseif(strstr( $referer, 'so.com')){ //360搜索
  preg_match( "|so.+q=([^\\&]*)|is", $referer, $tmp );
  $keyword = urldecode( $tmp[1] );
  $from = '360'; 
 }elseif(strstr( $referer, 'sogou.com')){ //搜狗
  preg_match( "|sogou.com.+query=([^\\&]*)|is", $referer, $tmp );
  $keyword = urldecode( $tmp[1] );
  $from = 'sogou'; 
 }elseif(strstr( $referer, 'soso.com')){ //搜搜
  preg_match( "|soso.com.+w=([^\\&]*)|is", $referer, $tmp );
  $keyword = urldecode( $tmp[1] );
  $from = 'soso';
 }else {
  $keyword ='';
  $from = '';
 }
 return array('keyword'=>$keyword,'from'=>$from);
}
//以下为测试
//在搜索引擎搜索个关键词,进入网站
$word = search_word_from();
if(!empty($word['keyword'])){
 echo '关键字:'.$word['keyword'].' 来自:'.$word['from'];
}
?>

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

相关文章

php中$_POST与php://input的区别实例分析

本文实例分析了php中$_POST与php://input的区别。分享给大家供大家参考。具体分析如下: $_POST 与 php教程://input可以取到值,$HTTP_RAW_POS...

PHP return语句的另一个作用

一直以为,return只能出现在函数中,直到看了bbPress的代码: <?php require_once('./bb-load.php'); bb_reperm...

php中Array2xml类实现数组转化成XML实例

本文实例讲述了php中Array2xml类实现数组转化成XML的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下: <?php class Array2x...

使用Sphinx对索引进行搜索

Sphinx对索引进行搜索主要分为以下几步:1、用户输入查询语句。 2、对查询语句进行词法分析,语法分析,及语言处理。 3、搜索索引,得到符合语法树的文档。 4、根据得到的文档和查询语句...

PHP生成网页快照 不用COM不用扩展.

代码 复制代码 代码如下: <?php $url = 'www.baidu.com'; //抓取百度 echo snapshot($url); //输出结果为图片地址 echo s...