我需要从数组中获取数据,但输出总是不同的,所以有时它会有更多的空键等。
$id = "1";
$url = file_get_contents("http://example.com/?api={$id}");
$json = json_decode($url, true);
foreach($json as $data)
{
echo $data[0][0]["test"];
}
问题是要从中打印值必须始终将空键的数量设置为echo $data[0][0]["test"];
无论有多少空键,如何才能在任何情况下只编写echo $data["test"];
?
编辑: json数组
[
[
{
"test: "testing"
}
]
]
答案 0 :(得分:4)
function printValue($array)
foreach($array as $value){
if(is_array($value)){
printValue($value)
}
else
echo $value;
}
}
基本上是一个递归函数,如果值是array
挖掘它,否则打印该值。
这适用于所有深度,无论是二级还是四级。
答案 1 :(得分:-1)
您可以创建递归函数以搜索密钥并将其返回:
<img :src="topmostArticle[0].topnews[0].img">
答案 2 :(得分:-3)
只需再使用一次json_decode。 示例:$ json = json_decode(json_decode($ url));