解析JSON POST PHP,无法生成对象

时间:2014-04-16 19:49:01

标签: php urlencode json blitline

之前我已经多次使用各种SAAS服务完成了这项工作,但我无法解析我从Blitline图像处理API获得的所谓JSON响应。

以下是我处理POST的方法:

$body=@file_get_contents('php://input');

print_r($body); 

results=%7B%22original_meta%22%3A%7B%22width

OR

$body=rawurldecode($body);

print_r($body); 

results={"original_meta":{"width ...

当我去打印$body->original_meta->width时,我得到一个空字符串。你会意识到我没有json_decode() $body但那是因为它也会返回一个空字符串。

使用results=删除substr($body, 8)也无济于事。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:2)

扩展我的评论:POST数据是标准的x-www-form-urlencoded数据,因此无需访问原始POST数据。您只需访问包含URL解码数据的$_POST数组:

$data = json_decode($_POST['results']);
echo $data->original_meta->width;

答案 1 :(得分:1)

好的,这很丑陋但是有效......

$body = file_get_contents('php://input');

$body=rawurldecode($body);

$body=substr($body, 8); 

$body=json_decode($body);

echo $body->original_meta->width; //1936