如何在php中将数组转换为treeview
下面是我的数组
Array
(
[0] => Array
(
[efi] => Array
(
)
)
[1] => Array
(
[grub] => Array
(
[0] => Array
(
[fonts] => Array
(
)
)
[1] => Array
(
[i386-pc] => Array
(
)
)
[2] => Array
(
[locale] => Array
(
)
)
[3] => Array
(
[x86_64-efi] => Array
(
)
)
)
)
)
我希望输出为树视图
EFI
平头
在grub下我想要
字体
I386-PC
区域设置
x86_64的-EFI
我在下面的代码中使用了相同的
function generateTreeMenu($dir_array, $parent = 0, $limit=0){
if($limit > 1000) return '';
$tree = '';
$tree = '<ul>';
for($i=0, $ni=count($dir_array); $i < $ni; $i++){
if($dir_array[$i]['parent_id'] == $parent){
$tree .= '<li><a>';
$tree .= $dir_array[$i]['title'].'</a>';
$tree .= generatePageTree($dir_array, $dir_array[$i]['id'], $limit++);
$tree .= '</li>';
}
}
$tree .= '</ul>';
return $tree;
}
generateTreeMenu($dir_array);
它显示警告
未定义的属性:中的stdClass :: $ parent_id
答案 0 :(得分:1)
以下是我的解决方案,基于您的帖子:
Theme.innerInstances = {
instance: WrappedComponent,
innerInstances: WrappedComponent.innerInstances,
};
Validator.innerInstances = {
instance: WrappedComponent,
innerInstances: WrappedComponent.innerInstances,
};
我删除了$ parent,因为我不需要它。然后,由于构建数组的方式,将忽略整数索引。如果您可以修改数组,则可以简化它并完全删除整数索引,并将其视为哈希表。它会使递归代码更简单。