PHP如何通过循环输出多维数组主索引下的series_id并生成JSON
PHP 提取多维数组主层级series_id并转JSON实现方案
循环类型选择
优先使用foreach循环实现:无需手动计算数组长度、维护遍历索引,适配所有PHP数组类型(关联数组、非连续索引数组都可正常遍历),代码更简洁不易出错,没有极端性能要求的场景下无需使用for循环。
完整实现代码
<?php // 示例原始多维数组,替换为你的实际数据即可 $sourceArr = [ [ 'series_id' => 42, 'userid' => 1, 'views' => 0, 'seasons' => [ [ 'season_id' => 58, 'series_id' => 42, 'episodes' => [ ['videoid' => 1223] ] ] ] ] ]; $seriesIdList = []; // 仅遍历主层级数组,忽略所有子级结构 foreach ($sourceArr as $item) { $seriesIdList[] = $item['series_id']; } // 转换为JSON格式输出,JSON_PRETTY_PRINT为格式化参数,生产环境可移除 $jsonRes = json_encode($seriesIdList, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); echo $jsonRes;
上述代码输出结果示例:
[ 42 ]
可选for循环实现(不推荐)
如果一定要使用for循环,仅支持连续数字索引的主数组,实现代码如下:
$seriesIdList = []; $arrLength = count($sourceArr); for ($i = 0; $i < $arrLength; $i++) { $seriesIdList[] = $sourceArr[$i]['series_id']; }
该写法容错性低,若主数组索引非连续、或后续调整为关联数组会出现取值错误,不推荐使用。
内容的提问来源于stack exchange,提问作者Salik Ameer
相关产品推荐
相关产品推荐

