淘宝IP地址查询接口
Class TaobaoIPQuery2{
private static $_requestURL = ‘ip.taobao/service/getIpInfo.php’; public static function getIPInfo($ip){
$long = ip2long($ip);
if($long === 0){
throw new Exception(‘IP address error’, 5);
$ip=long2ip($long);
$IPInfo = self::queryIPInfo($ip);
return self::parseJSON($IPInfo);
private static function queryIPInfo($ip){
$query = http_build_query(array(‘ip’= $ip));
$ch = curl_init();
$options = array(
CURLOPT_URL = sprintf(‘%s?%s’, self::$_requestURL, $query),
CURLOPT_RETURNTRANSFER = true,
CURLOPT_AUTOREFERER = false,
CURLOPT_FOLLOWLOCA TION = false,
CURLOPT_HEADER = false,
CURLOPT_TIMEOUT = 3.0,
curl_setopt_array($ch, $options);
$content = curl_exec($ch);
curl_close($ch);
return $content;
private static function parseJSON($json){
$O = json_decode ($json, true);
if(false === is_null($O)){
return $O;
if (version_compare(PHP_VERSION, ‘5.3.0’, ‘ =‘)) {
$errorCode = json_last_error();
if(isset(self::$_JSONParseError[$errorCode])){
throw new Exception(self::$_JSONParseError[$errorCode], 5);
throw new Exception(‘JSON parse error’, 5);
private static $_JSONParseError = array(
JSON_ERROR_NONE= ‘No error has occurred’,
JSON_ERROR_D EPTH= ‘The maximum stack depth has been exceeded’,
JSON_ERROR_CTRL_CHAR= ‘Control character error, possibly incorrectly encoded’, JSON_ERROR_STA TE_MISMA TCH= ‘Invalid or malformed JSON’,
JSON_ERROR_SYNTAX= ‘Syntax error’,
error parse newJSON_ERROR_UTF8= ‘M alformed UTF-8 characters, possibly incorrectly encoded’, }
TaobaoIPQuery2.Class.php~2KB
php
Class TaobaoIPQuery2{
private static $_requestURL = ‘ip.taobao/service/getIpInfo.php’;
public static function getIPInfo($ip){
$long = ip2long($ip);
if($long === 0){
throw new Exception(‘IP address error’, 5);
$ip=long2ip($long);
$IPInfo = self::queryIPInfo($ip);
return self::parseJSON($IPInfo);
private static function queryIPInfo($ip){
$query = http_build_query(array(‘ip’= $ip));
$ch = curl_init();
$options = array(
CURLOPT_URL = sprintf(‘%s?%s’, self::$_requestURL, $query), CURLOPT_RETURNTRANSFER = true,
CURLOPT_AUTOREFERER = false,
CURLOPT_FOLLOWLOCA TION = false,
CURLOPT_HEADER = false,
CURLOPT_TIMEOUT = 3.0,
curl_setopt_array($ch, $options);
$content = curl_exec($ch);
curl_close($ch);
return $content;
private static function parseJSON($json){
$O = json_decode ($json, true);
if(false === is_null($O)){
return $O;
if (version_compare(PHP_VERSION, ‘5.3.0’, ‘ =‘)) {
$errorCode = json_last_error();
if(isset(self::$_JSONParseError[$errorCode])){
throw new Exception(self::$_JSONParseError[$errorCode], 5);
throw new Exception(‘JSON parse error’, 5);
private static $_JSONParseError = array(
JSON_ERROR_NONE= ‘No error has occurred’,
JSON_ERROR_DEPTH= ‘The maximum stack depth has been exceeded’,
JSON_ERROR_CTRL_CHAR= ‘Control character error, possibly incorrectly encoded’,  JSON_ERROR_STA TE_MISMA TCH= ‘Invalid or malformed JSON’,
JSON_ERROR_SYNTAX= ‘Syntax error’,
JSON_ERROR_UTF8= ‘Malformed UTF-8 characters, possibly incorrectly encoded’, }

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。