我有一个这样的数组: [0] => Array ( [reserveid] => 12 [description] => description [amount] => 1000 [startdate] => 2020-01-01 00:00:00 [catid] => 8 [catname] => child categoryname [parentid] => 3 [parentname] => parent categoryname )储备属于子类别或直接属于父类别。我想创建一个数组,其中所有的父母都组合在一起。之后所有的孩子都被分组在一起,然后所有的储备都被分组在一起。所以我需要一个这样的数组:parentid -> catid -> reserveid -> (description, amount, startdate)我对编程还很陌生,我知道数组就是这样做的,但我无法理解这个过程。有人可以通过这种思维方式指导我吗?我将不胜感激 :)
1 回答

翻过高山走不出你
TA贡献1875条经验 获得超3个赞
您可以循环数组的元素,并创建一个新数组,其键将是您检索的值。
$array = [
['parent' => 10, 'cat' => 5, 'reserve' => 1, 'foo' => 'Foo', 'bar' => 'bar'],
['parent' => 8, 'cat' => 3, 'reserve' => 1, 'foo' => 'Foo', 'bar' => 'bar'],
['parent' => 10, 'cat' => 5, 'reserve' => 1, 'foo' => 'Foo', 'bar' => 'bar'],
];
$newArray = [];
foreach($array as $arr) {
$newArray[$arr['parent']][$arr['cat']][$arr['reserve']] = [
'foo' => $arr['foo'],
'bar' => $arr['bar']
];
}
var_export($newArray);
- 1 回答
- 0 关注
- 102 浏览
添加回答
举报
0/150
提交
取消