1
$dirs = array(
'root_dir' => array(
'sub_dir_1' => array(
0 => 'file'
),
'sub_dir_2' => array(
0 => 'file'
),
'sub_dir_3' => array(
0 => 'file_1',
1 => 'file_2',
2 => 'file_3'
)
),
);
$render = function($dirs) use (&$render) {
echo "<ul>";
foreach ($dirs as $parent => $children) {
if (is_string($parent) === true) {
echo "<li>$parent</li>";
$render($children);
} else {
echo "<li>$children</li>";
}
}
echo "</ul>";
};
$render($dirs);
輸出遞歸數據輸出
<ul>
<li>root_dir</li>
<ul>
<li>sub_dir_1</li>
<ul>
<li>file</li>
</ul>
<li>sub_dir_2</li>
<ul>
<li>file</li>
</ul>
<li>sub_dir_3</li>
<ul>
<li>file_1</li>
<li>file_2</li>
<li>file_3</li>
</ul>
</ul>
</ul>
所需輸出
<ul>
<li>
root_dir
<ul>
<li>
sub_dir_1
<ul>
<li>file</li>
</ul>
</li>
<li>
sub_dir_2
<ul>
<li>file</li>
</ul>
</li>
<li>
sub_dir_3
<ul>
<li>file_1</li>
<li>file_2</li>
<li>file_3</li>
</ul>
</li>
</ul>
</li>
</ul>
我做錯了嗎?