I have an array with n elements in it, with each element containing n child elements, each containing…
Array
(
[tea] => Array
(
[drink] => Array
(
[food] =>
)
)
[biscuits] => Array
(
[snack] => Array
(
[food] =>
)
)
...
)
What I want to do is have the inner most element on the outside, and the outer most elements on the inside:
Array
(
[food] => Array
(
[drink] => Array
(
[tea] =>
)
[snack] => Array
)
[biscuits] =>
(
)
...
)
And the solution needs to be able to deal with n children arrays. I am aware of How do I invert a multidimensional array in PHP but the solutions there did not solve this problem.
I’m pretty sure this could be condensed further, but it does the job:
Demo: http://codepad.org/rnZPdWGG