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

yipeiwu_com6年前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);
?>

相关文章

基于php编程规范(详解)

今天写这个是为了 提醒自己 编程过程 不仅要有逻辑 思想 还有要规范 代码 这样可读性 1、PHP 编程规范与编码习惯最主要的有以下几点:  1 文件说明  2 fu...

php字符串函数学习之strstr()

复制代码 代码如下: <?php /* 定义和用法 strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。 该函数返回字符串的其余部分(从匹配点)。如果未找到所...

PHP设计模式之适配器模式定义与用法详解

本文实例讲述了PHP设计模式之适配器模式定义与用法。分享给大家供大家参考,具体如下: 适配器很容易理解, 大多数人家庭都有手机转接器, 用来为移动电话充电,这就是一种适配器. 如果只有U...

PHP基于新浪IP库获取IP详细地址的方法

本文实例讲述了PHP基于新浪IP库获取IP详细地址的方法。分享给大家供大家参考,具体如下: <?php class Tool{ /** * 获取IP的归属地(...

ThinkPHP连接Oracle数据库

ThinkPHP连接Oracle数据库

一、操作环境搭建 系统:Windows7 旗舰版 64位 PHP环境:wampserver2.2e-php5.4.3-httpd2.2.22-mysql5.5.24 32位版 下载地...