您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

php根据新浪淘宝ip 获取json数据的处理数组的方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

class="area">

    利用新浪或者淘宝开放api调用ip获取地理位置的时候返回数据是以json形式展现的。但是怎么才能 把这些文件成功赋值给某一变量呢?

    \u4e2d\u56fd 这种怎么进行转码呢?PHP Code复制内容到剪贴板
    1. 返回数据如下 {"code":0,"data":{"country":"\u4e2d\u56fd","country_id":"CN","area":"\u534e\u5317","area_id":"100000","region":"\u5317\u4eac\u5e02","region_id":"110000","city":"\u5317\u4eac\u5e02","city_id":"110100","county":"","county_id":"-1","isp":"\u8054\u901a","isp_id":"100026","ip":"123.123.123.123"}}  
    2.   
    3. 但是怎么才能 把这些文件成功赋值给某一变量呢?  
    4. \u4e2d\u56fd 这种怎么进行转码呢?  
    5. 代码如下  
    6.   
    7. $ip="123.123.123.123";  
    8. //获取api的数据病赋值、$res  
    9. $res = @file_get_contents('http://ip.taobao.com/service/getIpInfo.php?ip='.$ip);  
    10.   
    11. //接收的值如下   
    12. //{"code":0,"data":{"country":"\u4e2d\u56fd","country_id":"CN","area":"\u534e\u5317","area_id":"100000","region":"\u5317\u4eac\u5e02","region_id":"110000","city":"\u5317\u4eac\u5e02","city_id":"110100","county":"","county_id":"-1","isp":"\u8054\u901a","isp_id":"100026","ip":"123.123.123.123"}}  
    13.   
    14.   
    15. 进行数据转换   
    16.   
    17. $json=preg_replace("#\\\u([0-9a-f]{4})#ie", "iconv('UCS-2BE', 'UTF-8', pack('H4', '\\1'))", $res);  
    18.   
    19. //转换完成以后的代码如下   
    20.   
    21. {"code":0,"data":{"country":"中国","country_id":"CN","area":"华北","area_id":"100000","region":"北京市","region_i