geoip+php示例:通过ip,获取国家名称和代码

GeoIP + PHP的使用方法一:下载 GeoIP 的 PHP 文件geoip.inc,保存为 geoip.inc.php

php使用代码

<?phpinclude("geoip.inc.php");$gi = geoip_open("GeoIP.dat",GEOIP_STANDARD);$country_code = geoip_country_code_by_addr($gi, $_SERVER['REMOTE_ADDR']);$country_name = geoip_country_name_by_addr($gi, $_SERVER['REMOTE_ADDR']);geoip_close($gi);$jsonEcho = array();$jsonEcho["error"] = 0;$jsonEcho["country_code"] = $country_code;$jsonEcho["country_name"] = $country_name;function jsonp($object, $callback = 'callback') {if (!empty($_GET[$callback])) {header('Content-Type: application/x-javascript');} else {header('Content-Type: application/json');}return $_GET[$callback].'('.json_encode($object).')';}echo jsonp($jsonEcho);?>注:在本地测试的话因 为$_SERVER[‘REMOTE_ADDR’]和$_SERVER[‘REMOTE_ADDR’]可能是127.0.0.1,所 以输出的内容为空。可以自己带入IP测试方法二:把 GeoIP 安装成 PHP 扩展yum install GeoIP GeoIP-data GeoIP-devel下载 GeoIP 数据库wget gzip -d GeoLiteCity.dat.gzmv GeoLiteCity.dat /var/lib/GeoIP/GeoIPCity.dat下载 GeoIP 的 PECL 扩展下载地址 wget -c tar -zxvf geoip-1.0.7.tgz安 装 GeoIP 的 PECL 扩展cd geoip-1.0.7/usr/local/php/bin/phpize./configure –with-php-config=/usr/local/php/bin/php-config –with-geoipmakemake install在 php.ini 里加上extension=geoip.so接着重启一下 php 就行了(nginx+php的情况,,而apache+php就不用重启了)现在,你可以使用 php 手册里的 GeoIP 部份函数了

参考:

我们首先去了象鼻山,那里景色秀丽神奇,

geoip+php示例:通过ip,获取国家名称和代码

相关文章:

你感兴趣的文章:

标签云: