我有这种邻接名单:
我需要对此进行排序: 2,7,9,10,5,16,17,11
Basiccaly我有一个表格,我用父ID存储帖子。我可以拥有无限数量的关卡。
我只需要PHP中的算法或完整代码。
我尝试使用行/列前缀和一些循环函数的变体。
答案 0 :(得分:0)
好的,我终于做到了。我是个傻瓜。
public function makeTree($parent_id = 0, &$array = array())
{
// Get results where parent_id == $parent_id
$recepts = $this->recept->get()->where("parent_id =" . $parent_id);
// Foreach through them
foreach ($recepts as $recept) {
// Add this to array
array_push($array, $recept);
// Repeat
$this->makeTree($recept["id"], $array);
}
return $array;
}