PHP在大型数据数组中循环创建另一个数组

PHP在大型数据数组中循环创建另一个数组,php,arrays,sorting,multidimensional-array,Php,Arrays,Sorting,Multidimensional Array,我有一个非常巨大的多维数组,我想创建另一个,将所有具有相同mapping\u id的元素合并到一个数组中。我正在尝试使用foreach,但时间太长,是否有其他解决方案?这就是我所拥有的: $newArray = array(); foreach ($objects as $obj) { $newArray[$obj['mapping_id']][] = $obj; } $objects是一个多维数组,包含键映射id和其他键。使用数组块。从PHP网络手册: 将数组分块为具有大小元素的数组

我有一个非常巨大的多维数组,我想创建另一个,将所有具有相同
mapping\u id
的元素合并到一个数组中。我正在尝试使用
foreach
,但时间太长,是否有其他解决方案?这就是我所拥有的:

$newArray = array();
foreach ($objects as $obj) {
    $newArray[$obj['mapping_id']][] = $obj;
}

$objects
是一个多维数组,包含键
映射id
和其他键。

使用数组块。从PHP网络手册: 将数组分块为具有大小元素的数组。最后一个块可能包含小于大小的元素。 试试这个:

$newArray = [];
$rows = array_chunk($objects, 100);

foreach ($rows as $obj) {
    $newArray[$obj['mapping_id']][] = $obj;
}

希望这有帮助。

我能看看您的数据的第一个索引吗?