最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法

 更新時(shí)間:2016年07月11日 16:29:23   作者:dotcoo  
這篇文章主要介紹了PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法,涉及php針對來路頁面URL的分析與判斷技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了PHP自定義函數(shù)獲取搜索引擎來源關(guān)鍵字的方法。分享給大家供大家參考,具體如下:

獲取搜索引擎來源關(guān)鍵字的函數(shù):

function getKeywords() {
  // 搜索引擎關(guān)鍵字映射
  static $host_keyword_map = array(
      'www.baidu.com' => 'wd',
      'v.baidu.com' => 'word',
      'image.baidu.com' => 'word',
      'news.baidu.com' => 'word',
      'www.so.com' => 'q',
      'video.so.com' => 'q',
      'image.so.com' => 'q',
      'news.so.com' => 'q',
      'www.sogou.com' => 'query',
      'pic.sogou.com' => 'query',
      'v.sogou.com' => 'query',
  );
  // 檢查來源是否搜索引擎
  if (!isset($_SERVER['HTTP_REFERER'])) {
    return '';
  }
  $urls = parse_url($_SERVER['HTTP_REFERER']);
  if (!array_key_exists($urls['host'], $host_keyword_map)) {
    return '';
  }
  $key = $host_keyword_map[$urls['host']];
  // 檢查關(guān)鍵字參數(shù)是否存在
  if (!isset($urls['query'])) {
    return '';
  }
  $params = array();
  parse_str($urls['query'], $params);
  if (!isset($params[$key])) {
    return '';
  }
  $keywords = $params[$key];
  // 檢查編碼
  $encoding = mb_detect_encoding($keywords, 'utf-8,gbk');
  if ($encoding != 'utf-8') {
    $keywords = iconv($encoding, 'utf-8', $keywords);
  }
  return $keywords;
}

函數(shù)測試:

<?php
header("Content-Type: text/html; charset=utf-8");
$referers = array(
    'http://www.baidu.com/s?cl=3&wd=%B9%E9%C0%B4&fr=vid1000',
    'http://www.baidu.com/s?tn=92506501_hao_pg&rtt=1&bsst=1&wd=%B9%E9%C0%B4',
    'http://www.baidu.com/link?url=ctBhF7AAau6LwE61pJOEH-ZhgUM7D3YHYMrm6xIXJlDQtMXCiea7gg49s90Q-Qh8wHD8Ano-dPNhUawBBNEEwEbtu8toMF5k1V7Xy850EtlpZyMcS0e_y-SCJp86iM6e&wd=%E5%BD%92%E6%9D%A5&tn=baidu&ie=utf-8&inputT=2980',
    'http://www.baidu.com/link?url=TIn9NR6fwiy6IwwkCcVF8HhHoxVUpHQsyj1YdlQPy2roXKTnSQS_3UxwvyjZ2JPkpxF8-diSoRCSpODUM_jq2K&wd=%E5%BD%92%E6%9D%A5&tn=baidu&ie=utf-8&input', 
    'http://news.baidu.com/ns?cl=2&rn=20&tn=news&word=%E5%BD%92%E6%9D%A5&ie=utf-8',
    'http://image.baidu.com/i?ct=503316480&z=&tn=baiduimagedetail&ipn=d&word=%E5%BD%92%E6%9D%A5&step_word=&ie=utf-8&in=17668&cl=2&lm=-1&st=&pn=6&rn=1&di=70447907090&ln=1994&fr=news&&fmq=1402285886106_R&ic=&s=&se=&sme=0&tab=&width=&height=&face=&is=&istype=&ist=&jit=&objurl=http%3A%2F%2Fpic31.nipic.com%2F20130713%2F1287761_225159187345_2.jpg',
    'http://v.baidu.com/v?ct=301989888&s=25&ie=utf-8&word=%E5%BD%92%E6%9D%A5',
    'http://www.so.com/s?ie=utf-8&shb=1&src=360sou_newhome&q=%E5%BD%92%E6%9D%A5',
    'http://video.so.com/v?q=%E5%BD%92%E6%9D%A5&src=tab_www',
    'http://image.so.com/v?q=%E5%BD%92%E6%9D%A5&src=tab_video&fromurl=http%3A%2F%2Fndent.oeeee.com%2Fhtml%2F201309%2F16%2F258899.html',
    'http://news.so.com/ns?q=%E5%BD%92%E6%9D%A5&src=tab_video',
    'http://www.sogou.com/web?query=%E5%BD%92%E6%9D%A5&_asf=www.sogou.com&_ast=1402284372&w=01019900&p=40040100&ie=utf8&sut=6558&sst0=1402284372272&lkt=0%2C0%2C0',
    'http://www.sogou.com/web?query=%E5%BD%92%E6%9D%A5&_asf=www.sogou.com&_ast=1402284372&w=01019900&p=40040100&ie=utf8&sut=6558&sst0=1402284372272&lkt=0%2C0%2C0',
    'http://pic.sogou.com/d?query=%B9%E9%C0%B4&mood=0&picformat=0&mode=1&di=0&w=03021800&dr=1&did=1',
    'http://v.sogou.com/v?query=%B9%E9%C0%B4&p=&w=',
    'http://www.baidu.com/s?aaa=bbb',
    'http://www.baidu.com/',
    'http://m.fzitv.net/',
);
foreach ($referers as $r) {
  $_SERVER['HTTP_REFERER'] = $r;
  echo getKeywords(), "\n";
}

搜索引擎占有比率:

http://engine.data.#/

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP錯(cuò)誤與異常處理方法總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • PHP中isset、empty的用法與區(qū)別示例詳解

    PHP中isset、empty的用法與區(qū)別示例詳解

    這篇文章主要給大家介紹了關(guān)于PHP中isset、empty的用法與區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 淺談定義一個(gè)PHP函數(shù)

    淺談定義一個(gè)PHP函數(shù)

    在過去很長一段時(shí)間里,PHP都是開發(fā)web應(yīng)用的不二之選。現(xiàn)在7.x版本又填補(bǔ)了許多高級特性和現(xiàn)代化應(yīng)用的需求,并且提高了開發(fā)者的效率。這門語言正不斷的發(fā)生改變,找出這些變化,并停止過去的寫法,放棄你原來的習(xí)慣并自豪的使用這些新特性,讓你的代碼更易讀易懂。
    2021-05-05
  • 無刷新動態(tài)加載數(shù)據(jù) 滾動條加載適合評論等頁面

    無刷新動態(tài)加載數(shù)據(jù) 滾動條加載適合評論等頁面

    無刷新動態(tài)加載數(shù)據(jù),滾屏加載更多數(shù)據(jù),適合評論等頁面,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下
    2013-10-10
  • PHP 面向?qū)ο髮?shí)現(xiàn)代碼

    PHP 面向?qū)ο髮?shí)現(xiàn)代碼

    如果要創(chuàng)建一個(gè)模型,這個(gè)模型將由一些緊密相關(guān)的對象采用,就可以使用抽象類。
    2009-11-11
  • 深入php socket的講解與實(shí)例分析

    深入php socket的講解與實(shí)例分析

    本篇文章是對php中socket的講解與實(shí)例進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php中使用session防止用戶非法登錄后臺的方法

    php中使用session防止用戶非法登錄后臺的方法

    這篇文章主要介紹了php中使用session防止用戶非法登錄后臺的方法,詳細(xì)分析了session防止用戶非法登錄后臺的原理與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-01-01
  • php給數(shù)組賦值的實(shí)例方法

    php給數(shù)組賦值的實(shí)例方法

    在本篇文章里小編給各位整理的是關(guān)于php如何給數(shù)組賦值的相關(guān)知識點(diǎn)內(nèi)容,有需要的朋友們參考下。
    2019-09-09
  • php實(shí)現(xiàn)的ping端口函數(shù)實(shí)例

    php實(shí)現(xiàn)的ping端口函數(shù)實(shí)例

    這篇文章主要介紹了php實(shí)現(xiàn)的ping端口函數(shù),以實(shí)例形式較為詳細(xì)的分析了PHP使用socket編程的技巧,需要的朋友可以參考下
    2014-11-11
  • 探討:如何使用PhpDocumentor生成文檔

    探討:如何使用PhpDocumentor生成文檔

    本篇文章是對使用PhpDocumentor生成文檔的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • Ajax+PHP邊學(xué)邊練 之五 圖片處理

    Ajax+PHP邊學(xué)邊練 之五 圖片處理

    在上一篇中講解了如何通過Ajax提交表單并由PHP處理底層數(shù)據(jù),本篇將主要介紹圖片的上傳與處理。對于文件的上傳很簡單,只需一個(gè)Form便可實(shí)現(xiàn),再通過PHP將源文件上傳到目標(biāo)目錄。
    2009-12-12

最新評論

林州市| 子洲县| 桑植县| 葵青区| 呼图壁县| 建湖县| 合作市| 莫力| 都江堰市| 宜良县| 峨边| 得荣县| 永修县| 开鲁县| 康马县| 高密市| 龙泉市| 新津县| 仙桃市| 墨玉县| 札达县| 十堰市| 西昌市| 紫金县| 金塔县| 永吉县| 西乌| 乌海市| 买车| 延津县| 巴彦县| 左云县| 新平| 英山县| 淄博市| 湘乡市| 西安市| 华宁县| 胶南市| 镇安县| 仙桃市|