我正在尝试使用php json_decode函数解码以下JSON。
[{ “TOTAL_COUNT”:17}]
我认为输出中的方括号是阻止它的。我该如何解决这个问题?我无法控制输出,因为它来自Facebook FQL查询:
答案 0 :(得分:2)
PHP的json_decode默认返回stdClass的实例。
对你来说,处理数组可能更容易。您可以强制PHP返回数组,作为json_decode的第二个参数:
$var = json_decode('[{"total_count":17}]', true);
之后,您可以将变量作为$result[0]['total_count']
答案 1 :(得分:0)
请参阅此JS小提琴,了解如何阅读它:
这与PHP的代码基本相同,除非您需要将true作为第二个参数传递给json_decode,告诉php您要将其用作关联数组而不是实际对象:
<?php
$result = json_decode('[{"total_count":17}]', true);
print $result[0]['total_count'];
?>
如果你没有传递true,你必须像这样访问它:$result[0]->total_count
因为它是一个包含一个对象的数组,而不是一个包含数组的数组。
答案 2 :(得分:0)
$json = "[{\"total_count\":17}]";
$arr = Jason_decode($json);
foreach ($arr as $obj) {
echo $obj->total_count . "<br>";
}
如果您想要关联数组而不是对象,请使用json_decode($json, true)
。