ez1989

在好多的应用中需要对用户的IP地址进行实际地址显示,这时候就需要对IP进行解析,可以采用TX的IP地址库去查询,但是这个动态库需要补断的更新比较麻烦,现在我们可以直接使用淘宝的IP查询接口来直接调用,省去了地址库的维护。

下面就是具体的方法封装:

/**
 * @todo 获取当前IP的具体位置
 * @param String $ip 获取到的客户端的实际IP地址
 * @return String $area 返回客户端IP地址的具体位置
 */
public function getIPAddresses($ip){
    $IPString=file_get_contents(\'http://ip.taobao.com/service/getIpInfo.php?ip=\'.$ip);//通过淘宝的IP库查询获取IP地址的具体信息
    $IPDetails=json_decode($IPString,TRUE);//解析淘宝返回的JSON数据
    if ($IPDetails[\'code\']==0){//IP地址返回状态
        if ($IPDetails[\'data\'][\'country\']==\'未分配或者内网IP\'){//判断是都是局域网
            $area=\'局域网地址\';
        }else{
            $area=$IPDetails[\'data\'][\'region\'].$IPDetails[\'data\'][\'city\'];
        }
    }else{
        $area=\'未知地址\';
    }
    return $area;
}

将该方法封装到常用的方法库中即可在项目的任何地方进行调用,十分方便。

分类:

技术点:

相关文章: