php中获取关键词及所属来源搜索引擎名称的代码

复制代码 代码如下:

  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

  <html>

  <head>

  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

  <title>greengnn codes</title>

  </head>

  <body>

  <form action="index.php" method="get">

  <input name="url" size="80"><button type="submit">GO</button>

  </form>

  <?php

  //获取关键词及所属来源搜索引擎名称

  $search_url = isset($_GET['url'])?$_GET['url']:''; //代表传入的地址

  /*$search_url = urldecode($search_url);

  print_r($search_url);

  */

  $config = array(

  "s1"=>array(

  "domain" => "google.com",

  "kw" => "q",

  "charset" => "utf-8"

  ),

  "s3"=>array(

  "domain" => "google.cn",

  "kw" => "q",

  "charset" => "utf-8"

  ),

  "s4"=>array(

  "domain" => "baidu.com",

  "kw" => "wd",

  "charset" => "gbk"

  ),

  "s5"=>array(

  "domain" => "soso.com",

  "kw" => "q",

  "charset" => "utf-8"

  ),

  "s6"=>array(

  "domain" => "yahoo.com",

  "kw" => "q",

  "charset" => "utf-8"

  ),

  "s7"=>array(

  "domain" => "bing.com",

  "kw" => "q",

  "charset" => "utf-8"

  ),

  "s8"=>array(

  "domain" => "sogou.com",

  "kw" => "query",

  "charset" => "gbk"

  ),

  "s9"=>array(

  "domain" => "youdao.com",

  "kw" => "q",

  "charset" => "utf-8"

  ),

  );

  //函数作用:从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;

  }

  $arr_key = array();

  foreach($config as $item){

  $sh = preg_match("/\b{$item['domain']}\b/",$search_url);

  if($sh){

  $query = $item['kw']."=";

  $s_s_keyword = get_keyword($search_url,$query);

  $F_Skey=urldecode($s_s_keyword);

  if($item['charset']=="utf-8"){

  $F_Skey=iconv( "UTF-8","gb2312//IGNORE",$F_Skey); //最终提取的关键词

  }

  $keys = explode(" ",$F_Skey);

  $arr_key[$item['domain']] = $keys;

  }

  }

  echo "<pre>";

  print_r($arr_key);

  ?>