我有一个Hierarchical类别数组。数组的索引是category_id,如::
[8846] => Array
(
[category_id] => 8846
[title] => Tsting two
[description] => Tsting two
[subtype] => categories
[type] => object
[level] => 2
[parent_category] => 8841
[tags] => new
[name] => Tsting two
)
每个值都有其parent_category值,我在数组中有大约500个元素,最好的方法是什么。
我遵循的流程:
krsort categories数组,以便所有子类别都在开头,然后
function makeHierarchical() {
foreach($this->categories as $guid => $category) {
if($category['level'] != 1)
$this->multilevel_categories[$category['parent_category']][$guid] = $category;
}
}
但这不起作用,它仅适用于第一级。
有人能指出我的错误。
答案 0 :(得分:1)
您可以将我昨天发布的答案用于类似的问题:
Convert a series of parent-child relationships into a hierarchical tree?
基本上它是一样的,你的数组中只有更多的字段。基本上你需要递归遍历数组。