【发布时间】:2012-01-24 20:01:20
【问题描述】:
我有一个格式如下的字符串数组:
$strings = array(
"/user",
"/robot",
"/user/1",
"/user/2",
"/user/2/test",
"/robot/1"
);
当我print_r()它时,我需要做的是把它变成如下结构的数组:
Array
(
[user] => Array (
[1] => array(),
[2] => Array (
[test] => array()
)
[robot] => Array (
[1] => array()
)
)
我知道我需要通过分隔符 / 分解原始字符串。但是我的问题是如何构建动态数组。
请注意,字符串可能有无限数量的斜杠。
【问题讨论】:
-
递归思考。例如,您可以将每个原始元素分解一次,然后将分解后的数组传递给一个函数,该函数将沿着树向下导航,直到到达分解数组的最后一个元素,此时它将插入该元素。
-
仅供参考,我猜这被否决了,因为它是一个"gimme teh codez" 问题。