我有这个代码来获取用户的IP地址和纬度和经度。但是,如果它找到lat和long,我想在地图上显示它。
$theirip = $_SERVER['REMOTE_ADDR'];
$fileinfo = file_get_contents("http://api.easyjquery.com/ips/?ip=".$theirip."&full=true");
这会输出这样的字符串。
{ “IP”: “000.000.00.000”, “continentCode”: “未知”, “continentName”: “未知”, “countryCode2”: “未知”, “国家”: “未知”, “countryCode3”: “未知”, “国家名称”: “未知”, “regionName”: “未知”, “的cityName”: “未知”, “cityLatitude”:0 “cityLongitude”:0 “countryLatitude”:0 “countryLongitude”: 0 “localTimeZone”: “未知”, “LOCALTIME”: “0”}
我想要从中检索cityLatitude和cityLongitude。我研究了一些并尝试了一些不同的代码。
$lat = $fileinfo -> {"cityLatitude"};
但我不太确定如何解决这个问题。任何帮助将不胜感激!
答案 0 :(得分:2)
你有一个JSON
字符串,你可以使用json_decode
来粘贴它
$obj = json_decode($fileinfo);
$lat = $obj -> {"cityLatitude"};
答案 1 :(得分:1)
它是一个JSONObject ...只需使用json_decode()从中获取数据
答案 2 :(得分:0)
无需解码JSON,它应该可以正常工作。 从这里尝试它的工作正常...
尝试使用您的IP代替$ itsip = $ _SERVER ['REMOTE_ADDR'];
答案 3 :(得分:0)
你正在使用PHP吗?它应该是
$info = json_decode($fileinfo);
$citylatitude = $info->cityLatitude;