分享下用curl获取指定IP下所有信息的api代码。
有关curl的相关内容,可以参考以下文章:
php curl上传文件的简单例子
php curl post的简单示例
php curl应用实例分析
php curl用法的实例代码
php使用curl判断远程文件是否存在的代码
php使用curl伪造IP来源的代码
php curl 学习总结
先充充电,然后看下面的代码。
代码如下:
<?php /** * curl取指定IP信息的API代码 * edit by www.jb200.com */ function getIpInfo($ip,$timeout=15) { if(!function_exists('curl_init') or !function_exists('simplexml_load_string')) return false; $ch = curl_init("http://www.jb200.com/ip_query2.php?ip={$ip}&timezone=true"); $options = array( CURLOPT_RETURNTRANSFER => true, ); curl_setopt_array($ch,$options); $res = curl_exec($ch); curl_close($ch); if($xml = simplexml_load_string($res)) { $dt = array(); foreach ($xml->Location->children() as $key=>$item) { $dt[$key] = strtolower($item); } return $dt; } else { return false; } } $current_Ip_Info = getIpInfo('61.164.140.55'); var_dump($current_Ip_Info); /* 返回内容: array(13) { ["Ip"]=> string(13) "61.164.140.55" ["Status"]=> string(2) "ok" ["CountryCode"]=> string(2) "cn" ["CountryName"]=> string(5) "china" ["RegionCode"]=> string(2) "02" ["RegionName"]=> string(8) "zhejiang" ["City"]=> string(5) "ruian" ["ZipPostalCode"]=> string(0) "" ["Latitude"]=> string(7) "27.7814" ["Longitude"]=> string(7) "120.628" ["TimezoneName"]=> string(14) "asia/chongqing" ["Gmtoffset"]=> string(5) "28800" ["Isdst"]=> string(1) "0" } */ ?>