1
我有一個數組,看起來像這樣(改變食物的例子 - 它實際上是業務主題標籤的分類):變換平面數組多維與節點值
Array
(
[fruit] => Fruit
[fruit/apple] => Apple
[fruit/banana] => Banana
[fruit/passion-fruit] => Passion fruit
[vegetable] => Vegetable
[vegetable/beans] => Beans
[vegetable/beans/runner-beans] => Runner beans
)
我想使用遞歸(推測)將其改爲:
Array
(
[fruit] => Array
(
[title] => Fruit
[children] => Array
(
[apple] => Array
(
[title] => Apple
)
[banana] => Array
(
[title] => Banana
)
[passion-fruit] => Array
(
[title] => Passion fruit
)
)
)
[vegetable] => Array
(
[title] => Vegetable
[children] => Array
(
[beans] => Array
(
[title] => Beans
[children] => Array
(
[runner-beans] => Array
(
[title] => Runner beans
)
)
)
)
)
)
我不知道該怎麼做。我在這裏找到了其他的例子,用於將平展數組轉換爲多維數組,但不包括有值('標題')和自定義子節點的地方。提前感謝任何指針。
謝謝 - 非常有幫助。當我看到它被寫下來時很簡單 - '通過參考'傳遞現在總是有意義的。如果你能夠刪除空的子節點,甚至更好! – Rob556
出於興趣,如果不是數組鍵是'ID',我們有一個索引數組,如[0] => array('id'=>'orange','title'=>'Orange',children = > ...),這將是多麼簡單的事情?我知道我們在關鍵字名稱上使用了isset(),所以它可能會導致在數組內搜索的複雜性。 – Rob556