我正在从这样的 json 提要中检索数据:
{
'data': {
'stuffs': [
{
'cats': '12',
'dogs': '53',
'bananas': '8',
},
{
'cats': '42',
'dogs': '49',
'bananas': '18',
},
{
'cats': '14',
'dogs': '900',
'bananas': '2',
}]
}
}
并使用如下函数获取数据:
function getData($url){
$json = file_get_contents($url);
$json_output = json_decode($json, TRUE);
foreach ($url['data']['stuffs'] as $benum){
$cats = $benum['cats'];
$dogs = $benum['dogs'];
$bananas = $benum['bananas'];
}
$myarray = array(
"cat" => $cats,
"dog" => $dogs,
"banana" => $bananas,
);
return $myarray;
}
我想设置一个像这样的foreach循环:
foreach ($myarray as $data){
echo $data['cat'];
echo $data['dog'];
echo $data['banana'];
}
并让它返回如下内容:
12
53
8
42
49
18
14
900
2
但是 foreach($myarray as $data) 不起作用。
问题是它只从数组中的每个键返回 1 个字符,这似乎是随机的。
有没有什么我可以做的,就像在 foreach 中根本没有“as”一样?
像:
foreach($myarray){
// the goods
}
提前致谢。