PHP如何获得入站的搜索引擎与关键字_PHP教程

WBOY
Lepaskan: 2016-07-13 10:33:01
asal
925 orang telah melayarinya

有时候,当我们从搜索引擎进入某个网站,他会有一行小字,“欢迎来自Google/百度,通过检索“XXX”关键字来到本站”之类的东西。那么这个功能是怎么实现的呢?其实不难,大概思路就是,获得入站URL,再正则我们需要的数据就行了。

<?php

$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';

/*
获取来自搜索引擎入站时的关键词。
*/
// 函数作用:从url中提取关键词。参数说明:url及关键词前的字符。
function get_keyword($url,$kw_start)
{
    $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;
}

?>
Salin selepas log masuk

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/752572.htmlTechArticle有时候,当我们从搜索引擎进入某个网站,他会有一行小字,“欢迎来自Google/百度,通过检索“XXX”关键字来到本站”之类的东西。那么这...
Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan