【问题标题】:How to extract multidimensional associative array to simple numeric array如何将多维关联数组提取为简单的数值数组
【发布时间】:2026-01-11 19:10:01
【问题描述】:

这是一个代码示例

Array
(
    [0] => Array
        (
            [ID] => 1197
        )
    [1] => Array
        (
            [ID] => 1078
        )
)

我希望它转换成简单的索引数组:

Array( 1197, 1078 )   

我知道这可以通过迭代每个索引并分配到一个临时数组来完成。在许多情况下,我想要像array_filter 这样的单行语法。 PHP中是否有任何内置函数可以在一行中完成我的任务,在一行中执行任何语句组合。我不想在循环中使用它。

【问题讨论】:

标签: php arrays multidimensional-array associative-array


【解决方案1】:

如果你使用 PHP > 5.5.0,你可以使用array_column:

$ids = array_column($array, 'ID');

在链接页面上,您会找到旧版本的替代品:

if(!function_exists("array_column"))
{

    function array_column($array,$column_name)
    {

        return array_map(function($element) use($column_name){return $element[$column_name];}, $array);

    }

}

【讨论】: