我正在尝试从结果json没有方括号的api获取数据,看起来像这样
{
"status":1,
"time":42868,
"response":{
"some_item":"itemval1",
"itemstat":"itemstatvalue"
}
}
我试图通过json_decode
获得一个数组,但我无法在任何地方找到我已经尝试了好几个小时...
$data = json_decode($result);
通过这样做我将数据以大字符串形式返回,但每当我尝试访问它时,例如
echo $data->time;
或
echo $data[0];
我收到错误说500我的代码无效,所以我想知道如何将其转换为可以访问这些值的数组。每当我只是echo $data
,虽然我得到一个充满了我需要的所有值的可笑大字符串,但无法访问它们。
答案 0 :(得分:0)
尝试下面的代码。然后,您将能够理解json_decode如何工作以及如何访问属性。
<强> You can see the result here 强>
<?php
$s = '{
"status":1,
"time":42868,
"response":{
"some_item":"itemval1",
"itemstat":"itemstatvalue"
}
}';
$object = json_decode($s);
var_dump($object);
echo PHP_EOL . '------------------------' . PHP_EOL;
$array = json_decode($s, true);
var_dump($array);
echo PHP_EOL . '------------------------' . PHP_EOL;
echo $object->response->some_item;
echo PHP_EOL . '------------------------' . PHP_EOL;
echo $array['response']['some_item'];