【发布时间】:2020-08-02 12:04:53
【问题描述】:
我有一个如下所示的 PHP 数组:
Array
(
[0] => Array
(
[id] => 2
[name] => Item2
[children] => Array
(
[0] => Array
(
[id] => 1
[name] => Item1
[children] => Array
(
[0] => Array
(
[id] => 5
[name] => Item5
)
)
)
[1] => Array
(
[id] => 4
[name] => Item4
)
)
)
[1] => Array
(
[id] => 3
[name] => Item3
)
)
它有未知(不可预测)的深度和长度。任何级别的任何项目可能有也可能没有孩子。它是从包含产品组的 xml 文件创建的。我想将其转换为包含三个元素数组的数组:id、name 和 parent id:
[0] => array('id' => '2', 'name' => 'Item2', 'parent' => 0),
[1] => array('id' => '1', 'name' => 'Item1', 'parent' => 2),
[2] => array('id' => '4', 'name' => 'Item4', 'parent' => 2) etc.
我该怎么做? 谢谢!
【问题讨论】:
-
我投票结束这个问题,因为这读起来像是一个“谁可以为我做这件事” 的问题。您应该描述问题,更重要的是:展示您的尝试
-
感谢您指出这一点,埃利亚斯。我使用了 for 和 foreach 循环,但觉得包含不起作用的解决方案是愚蠢的。另外,我在网上没有发现这样的问题,所以认为我的问题可能会帮助遇到同样问题的其他人。这是我在 Stackoverflow 上的第一个问题,所以我希望下次能把我的问题做得更好。
标签: php arrays multidimensional-array flatten