在好多的应用中需要对用户的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; }
将该方法封装到常用的方法库中即可在项目的任何地方进行调用,十分方便。