PHP多维数组取值问题:如何获取嵌套的u_business_service值
如何获取多维数组中的嵌套字段值
嘿,我来帮你搞定这个嵌套数组取值的问题!你已经能顺利拿到number、short_description这类直接的字段值,但对于像u_business_service这种嵌套的子数组,其实取值逻辑很简单——直接逐层访问就行。
看你的数组结构,u_business_service本身是一个子数组,里面包含display_value(也就是你要的业务服务名称)和link字段。所以你只需要在循环里通过$line['u_business_service']['display_value']就能拿到对应的值,把它和其他字段放在同一行输出就可以了。
给你修改后的代码示例:
foreach($data['result'] as $line){ // 将多个字段拼接在同一行输出 echo $line['number'] . ' | ' . $line['short_description'] . ' | 业务服务:' . $line['u_business_service']['display_value']; echo '<br>'; }
另外,为了避免因为数据缺失(比如u_business_service字段为空)导致PHP抛出警告,建议你加个简单的存在性判断,让代码更健壮:
foreach($data['result'] as $line){ // 先判断嵌套字段是否存在,不存在则显示默认值 $business_service = isset($line['u_business_service']['display_value']) ? $line['u_business_service']['display_value'] : '未指定'; echo $line['number'] . ' | ' . $line['short_description'] . ' | 业务服务:' . $business_service; echo '<br>'; }
这样不管数据里有没有这个嵌套字段,代码都能正常运行啦!
内容的提问来源于stack exchange,提问作者Thillai Manalan Thallai Muthu
相关产品推荐
相关产品推荐

