欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP查询ip所在地的几种方法

程序员文章站 2022-06-09 23:26:24
...
根据IP地址查找我们的IP地址所在地,这个最简单办法就是直接把ip在百度搜索就可以知道你的IP地址所在地了,但对于一些网站我们不能使用此方法,但可以通过api来实现.

例子,利用第三方接口实例,代码如下:


请输入ip地址:

(.*?)/", $str, $addr1); //最终结果,如图2; $addr = $ip . "=>" . $addr1[1][0]; echo $addr; } ?>

例子,利用QQWry,目前只支持PHP5版本.

安装:

1.sudo pecl install qqwry-beta或者直接下载编译,phpize && ./configure && make && sudo make install

2.编辑php.ini,加入extension=qqwry.so

3.重启http server

使用很简单,首先就是实例化,传入纯真数据库的文件路径,然後调用q方法,该方法返回一个数组,第一个值为地址1,例如南宁市,第二个值为地址2,例如邕 宁区电信ADSL,看到子吧,一目了然。,下面的iconv是把数据从GB2312转到UTF-8,如果你的站点是用GB2312,那么这一步是不需要的,代码如下:

q('127.0.0.1');
$addr1 = iconv('GB2312', 'UTF-8', $addr1);
$addr2 = iconv('GB2312', 'UTF-8', $addr2);
echo $addr1, '|', $addr2, " ";
$arr = $qqwry->q('222.216.47.4');
$arr[0] = iconv('GB2312', 'UTF-8', $arr[0]);
$arr[1] = iconv('GB2312', 'UTF-8', $arr[1]);
echo $arr[0], '|', $arr[1], " ";
$arr = $qqwry->q('64.233.187.99');
$arr[0] = iconv('GB2312', 'UTF-8', $arr[0]);
$arr[1] = iconv('GB2312', 'UTF-8', $arr[1]);
echo $arr[0], '|', $arr[1], " ";
//输出:
//本机地址|
//广西南宁市|(青秀区)电信ADSL
//美国|加利福尼亚州Google公司
?>

例子,如果你只要查查IP地址就不需相面那么复杂了,如我在百度输入 110.110.110.110

显示地址为,IP地址:110.110.110.110黑龙江省哈尔滨市 铁通