php轉換ip函式

科技小先鋒發表於2017-11-14
[背景]以前都是用perl寫的,今天用php也寫一個,哈哈。不錯…
<?php

get_ip(“218.22.93.241”);
get_ip(“58.242.161.5”);

function get_ip($ip){

$br = (php_sapi_name() == “cli”)? ”
“:”<br>”;

$qqwry=new qqwry(`QQWry.Dat`);

list($addr1,$addr2)=$qqwry->q($ip);
$addr1=iconv(`GB2312`,`UTF-8`,$addr1);
$addr2=iconv(`GB2312`,`UTF-8`,$addr2);
echo $addr1,`|`,$addr2,”$br”;

}

Result:
安徽省蚌埠市|電信
安徽省蚌埠市|網通

環境搭建
第一步
wget  http://pecl.php.net/get/qqwry
tar -zxf qqwry-0.1.0.tgz
cd qqwry-0.1.0
/usr/local/webserver/php/bin/phpize
./configure –with-php-config=/usr/local/webserver/php/bin/php-config

第二步
編輯 php.ini 加入  extension=qqwry.so 然後重啟 http 服務

php -m 檢視是否支援 qqwry

php -m | grep qqwry

如果報錯,請注意extension_dir的值
extension_dir = “/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/” 
看在這個目錄下是否有qqwry.so
重啟web服務,如
/usr/local/webserver/php/sbin/php-fpm restart

第三步
下載IP資料
http://www.newhua.com/soft/19051.htm



本文轉自hahazhu0634 51CTO部落格,原文連結:http://blog.51cto.com/5ydycm/182301,如需轉載請自行聯絡原作者


相關文章