foreach循环导致无效的json [英] invalid json resulted by foreach loop
本文介绍了foreach循环导致无效的json的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
说我想获取某物的值并将其存储在arr中以生成json:
says I want to get a value of something and store in into an arr to produce json :
foreach($item as $items){
$items = $someting->name;
$arr = array(
'itemName'=>$items
);
echo json_encode($arr);
};
结果
{'itemName':'shoe}{'itemName':'toy}{'itemName':'ball}
它在后面缺少分号.
推荐答案
在大多数情况下,json_encode仅应调用一次.继续在php数组中添加所有要转换为JSON的内容,然后调用json_encode
In most cases json_encode should be called once only. Keep adding all you want to convert to JSON in a php array, then call json_encode
$json = array('items' => array());
foreach ($items as $item) {
$json['items'][] = array(
'itemName' => $item->name
);
};
echo json_encode($json);
您还可以为所有$ items数组调用json_encode,而无需执行循环
You could also call json_encode for all your $items array without doing a loop
json_encode($items)
这篇关于foreach循环导致无效的json的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文