php 怎样获取 json 返回值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 怎样获取 json 返回值相关的知识,希望对你有一定的参考价值。

http://api.map.baidu.com/geocoder/v2/?ak=Lppm8s01iNb6ZD852nzkfMd0&callback=renderReverse&location=35.07240907,118.34076824&output=json

以上是返回的json数据,怎样获取返回地址:“山东省临沂市兰山区解放路181号-7"

$url = 'http://api.map.baidu.com/geocoder/v2/?ak=Lppm8s01iNb6ZD852nzkfMd0&callback=renderReverse&location=35.07240907,118.34076824&output=json';
$result = file_get_contents($url);
$jsonArray = json_decode($result,true);
var_dump($jsonArray);

json数据得自己处理,也可以使用curl get获取数据追问

能否在详细些,json_decode()这个函数我知道,正常json能转换数组,可本案这个多了个:renderReverse&&renderReverse,导致无法正常转换,是否需要过滤掉在进行呢

追答

把这串&callback=renderReverse删了就可以了
如果这个是必须的,只能自己来截取需要的json的数据了

追问

怎样删啊

追答

http://api.map.baidu.com/geocoder/v2/?ak=Lppm8s01iNb6ZD852nzkfMd0&location=35.07240907,118.34076824&output=json

参考技术A 没有明白你的意思 如果你是说页面传递过去的数据是json格式的 在php里面要获取用php的语法处理他 那么php有自己的函数json_decode() 可以 帮你解析为你需要的

php 怎样获取 返回的json值提交到数据库

http://api.map.baidu.com/location/ip?ak=E4805d16520de693a3fe707cdc962045&ip=180.97.33.108&coor=bd09ll&qq-pf-to=pcqq.c2c

打开页面自动获取ip,然后在根据ip向百度发送api申请,然后在获取百度返回的json的,x和y的值
"x":"119.36848894","y":"33.01379717"

PHP获取JSON的数据可以使用内置的 json_decode() 就可以解码为PHP变量,可根据自己需要的格式来进行格式化并提交到数据库。

例如:

<?php 
$json = '"a":1,"b":2,"c":3,"d":4,"e":5'; 
var_dump(json_decode($json)); 
var_dump(json_decode($json, true)); 
?>

将会输出

object(stdClass)#1 (5)  
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
 

array(5)  
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 

参考技术A 你是想只取其中的x和y的值?
首先获取api的返回值你应该没问题噻?将返回值保存到变量中。
$retData = file_get_contents('http://api.map.baidu.com/location/ip?ak=E4805d16520de693a3fe707cdc962045&ip=180.97.33.108&coor=bd09ll&qq-pf-to=pcqq.c2c
');
$data = json_decode($retData, true);
$x= $data['content'][''point]['x'];
$y= $data['content'][''point]['y'];追问

稍等我测试下哈~~

本回答被提问者采纳

以上是关于php 怎样获取 json 返回值的主要内容,如果未能解决你的问题,请参考以下文章

ajax返回为对象,怎样得到对象的属性值

用PHP调用API返回JSON值,怎么把JSON返回值调用到html呢?

php 怎么用输出流的形式给http接口传入json,并获取返回值?

使用LoadRunner发送json格式登陆参数后怎样获取登陆验证的token

从 php 中的 mvc 控制器方法返回一个 json 值

js怎样获取onclick的返回值