将单元素数组数组转换为一维数组

我有一个包含单元素数组的数组:

$array = [[88868], [88867], [88869], [88870]];

我需要将其转换为一维数组。

所需输出:

[88868, 88867, 88869, 88870]

此数组转换是否有任何内置/本机 PHP 功能?


答案 1

对于您的有限用例,这将执行以下操作:

$oneDimensionalArray = array_map('current', $twoDimensionalArray);

当子数组具有许多条目时,这可以更加通用:

$oneDimensionalArray = call_user_func_array('array_merge', $twoDimensionalArray);

答案 2

PHP array_mergeDocs 函数可以展平您的数组:

$flat = call_user_func_array('array_merge', $array);

如果原始数组的深度高于 2 级,PHP 中的 SPL 有一个递归数组,您可以使用它来平展它:

$flat = iterator_to_array(new RecursiveIteratorIterator(new RecursiveArrayIterator($array)), 0);

另请参阅:将多维数组转换为一维数组