You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Laravel中如何根据指定键提取多维数组的对应值

多维数组提取指定键所有值的实现方法

需求说明

给定一组由多个关联子数组组成的多维常量数组,需要提取所有子数组中指定键(此处为investment_name)对应的值,组成新的一维数组。

示例原数组

const defaultInvestmentFields = [
    [
        'type' => 'system',
        'investment_name' => 'Ballast'
    ],
    [
        'type' => 'system',
        'investment_name' => 'Inverters'
    ],
    [
        'type' => 'system',
        'investment_name' => 'Extra garantie inverters'
    ]
];

实现方案

方案1:使用内置函数array_column(推荐)

PHP 5.5及以上版本支持array_column函数,专门用于从多维数组中提取指定单列的值,代码最简:

$investmentNames = array_column(defaultInvestmentFields, 'investment_name');

执行后$investmentNames就是预期的输出结果:['Ballast', 'Inverters', 'Extra garantie inverters']

方案2:循环遍历实现(兼容低版本)

如果需要兼容PHP 5.5以下版本,或者需要额外加判断逻辑,可以用遍历实现:

$investmentNames = [];
foreach (defaultInvestmentFields as $item) {
    // 加isset判断避免子数组不存在指定键时报错
    if (isset($item['investment_name'])) {
        $investmentNames[] = $item['investment_name'];
    }
}

内容的提问来源于stack exchange,提问作者Levi Roelofsma

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 20:09:00