You need to enable JavaScript to run this app. PHP如何从json_decode嵌套数组中获取anime.image的original字段值?
优惠活动
大模型
产品
解决方案
定价
更多

PHP如何从json_decode嵌套数组中获取anime.image的original字段值?

无输出的核心原因

你调用array_column没有得到有效结果,是因为目标值original不属于每个顶层数组元素的直接子键,而是嵌套了两层结构:顶层元素 -> anime -> image -> original。如果调用时没有传入完整的嵌套路径,array_column会因为匹配不到对应键,直接返回空数组,自然没有任何输出。

具体实现方法
  • 全PHP版本兼容方案
    通过array_map遍历每个顶层元素,逐层取值,搭配空合并运算符做兜底,就算某条数据缺失对应键,也不会触发警告中断流程:
    $originalImagePaths = array_map(function ($item) {
        return $item['anime']['image']['original'] ?? null;
    }, $list);
    
  • PHP7.0+ 简化方案
    从PHP7.0版本开始,array_column原生支持点号分隔的嵌套键路径,不需要手动写遍历逻辑,直接指定完整路径即可取值:
    $originalImagePaths = array_column($list, 'anime.image.original');
    
补充说明
  • 两种方法返回的结果数组长度和输入的$list完全一致,索引和原数组一一对应
  • 如果某条数据缺失anime、image字段,或是original字段为空,结果集中对应位置会返回null,不会影响其他正常数据的提取

内容的提问来源于stack exchange,提问作者Алина Хром

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.27 22:15:04