在PHP中,如何在以逗号分隔的字符串中返回JSON元素值?
这就是我在PHP中调用“list”JSON文件的方式:
{
"resultCount":3,
"results": [
{"itemId":1223604159},
{"itemId":1231618623},
{"itemId":1244303880}]
}
这是列表JSON内容(可能包含更多项目,每列更多列,而不仅仅是itemID):
1223604159,1231618623,1244303880
所以我希望这个字符串作为响应:
$IdByCommas = implode(',',$items->results->itemId);
已经尝试过内爆但没有成功:
server.js
答案 0 :(得分:3)
由于$items->results
的每个项目都是一个包含一个键itemId
的数组,因此您只能implode($items['results'])
。您必须获得itemId
的每个值。
使用php5.5 / 5.6 / 7,你有array_column
功能,你可以:
echo implode(',', array_column($items['results'], 'itemId')));
否则,您必须提取itemId
的每个值:
$ids = [];
foreach ($items['results'] as $item) {
$ids[] = $item['itemId'];
}
echo implode(',', $ids);
另外,我使用[]
代替->
,因为您将json解码为数组,而不是对象。