日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php基于新浪ip库获取城市,PHP基于新浪IP库获取IP详细地址的方法

發布時間:2024/1/23 php 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php基于新浪ip库获取城市,PHP基于新浪IP库获取IP详细地址的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

[導讀]這篇文章主要介紹了PHP基于新浪IP庫獲取IP詳細地址的方法,涉及php正則、curl及編碼轉換相關操作技巧

本文實例講述了PHP基于新浪IP庫獲取IP詳細地址的方法。代碼如下<?php

class?Tool{

/**

*?獲取IP的歸屬地(?新浪IP庫?)

*

*?@param?$ip?String????IP地址:112.65.102.16

*?@return?Array

*/

static?public?function?getIpCity($ip)

{

$ip?=?preg_replace("/s/","",preg_replace("/

/","",$ip));

$link?=?"http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=".$ip."&t=".time();

$ipJson?=?self::httpCurl($link);

preg_match("/"country":"(.*)"/Uis",$ipJson,?$match1);

preg_match("/"province":"(.*)"/Uis",$ipJson,?$match2);

preg_match("/"city":"(.*)"/Uis",$ipJson,?$match3);

return?array(

'country'=>self::ucode2zh($match1[1]),?//?國家

'province'=>self::ucode2zh($match2[1]),?//?省

'city'=>self::ucode2zh($match3[1])???//?城市

);

}

/**

*?Curl方式獲取信息

*/

static?public?function?httpCurl($url)

{

$curl_handle?=?curl_init();

curl_setopt($curl_handle,?CURLOPT_URL,?$url);

curl_setopt($curl_handle,?CURLOPT_CONNECTTIMEOUT,2);

curl_setopt($curl_handle,?CURLOPT_RETURNTRANSFER,1);

curl_setopt($curl_handle,?CURLOPT_FAILONERROR,1);

$file_content?=?curl_exec($curl_handle);

curl_close($curl_handle);

return?$file_content;

}

/**

*?將unicode編碼轉化為中文,轉化失敗返回原字符串

*

*?@param?$code?String???unicode編碼

*?@return?String

*/

static?public?function?ucode2zh($code)

{

$temp?=?explode('u',$code);

$rslt?=?array();

array_shift($temp);

foreach($temp?as?$k?=>?$v)

{

$v?=?hexdec($v);

$rslt[]?=?''?.?$v?.?';';

}

$r?=?implode('',$rslt);

return?empty($r)???$code?:?$r;

}

}

獲取IP地址類使用實例<?php

$ipStr?=?Tool::getIpCity('112.65.102.16');

print_r($ipStr);

返回結果Array?(?[country]?=>?中國?[province]?=>?上海?[city]?=>?上海?)PS:注意查詢量大時,sina會不會屏蔽你的問題

總結

以上是生活随笔為你收集整理的php基于新浪ip库获取城市,PHP基于新浪IP库获取IP详细地址的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。