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实现支持加盐的图片加密解密

PHP实现支持加盐的图片加密解密

一个简单的图片加解密函数,使用client跑,不要使用浏览器跑 话不多说,直接上代码 <?php /** * Created by hello. * User...

浅谈PHP命令执行php文件需要注意的问题

require_once '/data/web/fewfawef/wwwroot/Public/queenchuli/common/mysql.php'; 里面必须要写绝对路径 写死 才...

PHP合并数组+与array_merge的区别分析

主要区别是两个或者多个数组中如果出现相同键名,键名分为字符串或者数字,需要注意 1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果...

redis 队列操作的例子(php)

入队操作 复制代码 代码如下: <?php $redis = new Redis(); $redis->connect('127.0.0.1',6379); while(Tr...

PHP页面转UTF-8中文编码乱码的解决办法

对于乱码这个问题php开发者几乎都会有碰到过,我们下面主要是介绍了php文件乱码和页面乱码。 PHP页面转UTF-8编码问题 1.在代码开始出加入一行: header("Content...