我想递归地查看一个名为“image”的键的嵌套 JSON 对象,并将它们的值(URL 字符串)推送到函数外部的另一个数组中。
从其他示例和 SO 问题中,我了解到我需要传递对范围外数组变量的引用,但我对 PHP 不是很好,这不起作用。
$response = json_decode('deeply nested JSON array from link below');
$preload = [];
array_walk_recursive($response, function($item, $key) use (&$preload) {
if ($key === 'image') {
array_push($preload, $item);
}
});
$preload
运行此函数后为空,因为$key
它们都是整数,我认为它们实际上应该是 JSON 对象中的“图像”、“标题”等字符串?
这是实际的 JSON 数据:https ://pastebin.com/Q4J8e1Z6
我误解了什么?