我有一个非常大的多维数组,我想创建另一个多维数组,将具有相同mapping_id
的所有元素合并到一个数组中。我正在试着用foreach
,但是花的时间太长了,还有其他的解决方案吗?这就是我所拥有的:
$newArray = array();
foreach ($objects as $obj) {
$newArray[$obj['mapping_id']][] = $obj;
}
$objects
是一个包含键mapping_id
和其他键的多维数组。
发布于 2015-08-19 07:13:05
使用array_chunk。来自PHP net手册:将一个数组分成带有size元素的数组。最后一个块可能包含小于size的元素。试试这个:
$newArray = [];
$rows = array_chunk($objects, 100);
foreach ($rows as $obj) {
$newArray[$obj['mapping_id']][] = $obj;
}
希望这能有所帮助。
https://stackoverflow.com/questions/32083972
复制相似问题