在WordPress中使用PHP脚本来判断访客来自什么国家
《:在WordPress中使用PHP脚本来判断访客来自什么国家》要点: PHP编程区分访客国家有什么用? PHP编程这里是几个我利用该功能的例子. PHP编程1.区分网站功能 PHP编程2.区分展示广告 PHP编程3.屏蔽布点服务 PHP编程在 PHP 通过 IP 区分国家 PHP编程如何用 PHP 通过 IP 区分国家和地区呢? Maxmind.com 提供一套 GeoIP 的解决方案,只需要简单几步即可在 PHP 中通过 IP 判断访客的国家. PHP编程1. 下载数据库和 PHP 库文件 PHP编程下载 GeoID.dat.gz,解压为 GeoIP.dat 文件. PHP编程
<?php
// 引入 PHP 库文件
include("geoip.inc");
// 打开本地数据库,数据保存在 GeoIP 文件中.
$geoData = geoip_open('GeoIP.dat',GEOIP_STANDARD);
// 获取国家 IP
$countryCode = geoip_country_code_by_addr($geoData,$_SERVER['REMOTE_ADDR']);
// 获取国家名称
$countryName = geoip_country_name_by_addr($geoData,$_SERVER['REMOTE_ADDR']);
// 关闭本地数据库
geoip_close($geoData);
?>
PHP编程在 WordPress 中通过 IP 区分国家 PHP编程既然 PHP 上使用没问题,WordPress 肯定也是 Okay 的. 看看我是怎么使用的. PHP编程1. 放置数据库文件 PHP编程2. 编写调用接口 PHP编程
<?php
include('geoip.inc');
global $countryCode;
$geoData = geoip_open('GeoIP.dat',GEOIP_STANDARD);
$countryCode = geoip_country_code_by_addr($geoData,$_SERVER['REMOTE_ADDR']);
geoip_close($geoData);
?>
PHP编程这里只取国家代号作为判别依据. 并且国家代号是全局变量,以避免页面多处判断需要反复拜访 GeoIP.dat 获取信息,减少程序开销. PHP编程2. 调用接口,获取国家代号 PHP编程
<?php include('include/geoip.php'); ?>
PHP编程4. 使用国家代号 PHP编程
<?php
global $countryCode;
if($countryCode == 'CN') {
// 中国大陆地区执行的代码
} else if($countryCode == 'US') {
// 美国地区执行的代码
} else {
// 中国大陆和美国以外地区执行的代码
}
?>
PHP编程 PHP编程PS:采用IP查询API接口 PHP编程(1)腾讯IP分享计划
代码如下:
/**根据腾讯IP分享计划的地址获取IP所在地,比较精确*/function getIPLoc_QQ($ip1){$url = 'http://ip.qq.com/cgi-bin/searchip?searchip1='.$ip1;$ch = curl_init($url);curl_setopt($ch,CURLOPT_ENCODING,'gb2312');curl_setopt($ch,CURLOPT_TIMEOUT,10);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true) ; // 获取数据返回$result = curl_exec($ch);$result = mb_convert_encoding($result,"utf-8","gb2312"); // 编码转换,否则乱码curl_close($ch);preg_match("@<span>(.*)</span></p>@iU",$result,$ipArray);$loc = $ipArray[1];return $loc;} PHP编程(2)新浪IP查询接口
代码如下:
/**根据新浪IP查询接口获取IP所在地*/function getIPLoc_sina($ip1){$url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='.$ip1;$ch = curl_init($url);//curl_setopt($ch,'utf8');curl_setopt($ch,true) ; // 获取数据返回$location = curl_exec($ch);$location = json_decode($location);curl_close($ch); $loc = "";if($location===FALSE) return "";if (emptyempty($location->desc)) {$loc = $location->province.$location->city.$location->district.$location->isp;}else{$loc = $location->desc;}return $loc;} PHP编程(3)使用淘宝IP接口
代码如下:
/** * 根据淘宝IP查询接口获取IP所在地 */function getCity($ip){$url="http://ip.taobao.com/service/getIpInfo.php?ip=".$ip;$ip=json_decode(file_get_contents($url));if((string)$ip->code=='1'){ return false; } $data = (array)$ip->data;return $data;} PHP编程 PHP编程通过 IP 判断访客来源十分精准的,现在一些外贸网站都是通过这个办法向用户进行展示区分,比如美国地区的用户默认看到美国能买到的商品和美国物流信息. 但不是百分之百的准确,比如某人常年翻墙,那他可能一直看不到本国的信息. 至于是否需要区分处理,网站主要有所考虑. 《:在WordPress中使用PHP脚本来判断访客来自什么国家》是否对您有启发,欢迎查看更多与《:在WordPress中使用PHP脚本来判断访客来自什么国家》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |