我正在使用文件获取内容方法来获取统计数据,如下所示
$val = file_get_contents('https://example.com/getStatsData');
我的输出值如下所示
{"msg":"success","data":[[{"stats_abc":"1223","stats_bcd":"55684","stats_cda":"14999","stats_def":232456,"stats_efg":"432868","stats_fgh":"7558","stats_ghi":"3,778.72","stats_date":"20-01-2018 17:00 PM"}],null]}
但是当我把它解码为json_decode($ val)时。它没有显示任何东西。 任何人都可以帮助我将数据作为数组/对象获取吗?
提前致谢
答案 0 :(得分:1)
这确实有效:
<?php
$json = '{
"msg": "success",
"data": [
[{
"stats_abc": "1223",
"stats_bcd": "55684",
"stats_cda": "14999",
"stats_def": 232456,
"stats_efg": "432868",
"stats_fgh": "7558",
"stats_ghi": "3,778.72",
"stats_date": "20-01-2018 17:00 PM"
}], null
]
}';
echo '<pre>';
print_r(json_decode($json));
echo '</pre>';
并导致:
stdClass Object
(
[msg] => success
[data] => Array
(
[0] => Array
(
[0] => stdClass Object
(
[stats_abc] => 1223
[stats_bcd] => 55684
[stats_cda] => 14999
[stats_def] => 232456
[stats_efg] => 432868
[stats_fgh] => 7558
[stats_ghi] => 3,778.72
[stats_date] => 20-01-2018 17:00 PM
)
)
[1] =>
)
)
只是为了表明json本身就好了。
答案 1 :(得分:1)
请试试这个: 我已经把你的响应放在本地json文件和调用,它工作正常。检查一下:
<?php
$val= file_get_contents('http://localhost/j/test.json');
print_r(json_decode($val,true));
?>
答案 2 :(得分:0)
首先确保,$ val不为空。
然后使用json_decode($val, 1)
。这将按预期将其转换为关联数组。