通过递归函数创建树


create tree through recursive function

我有一个表

id,name,parent_id,designation列,

我想通过php中的递归函数创建树。

每个CCD_ 2都在CCD_ 3列中查找,如果用户登录,则用户可以根据CCD_。

A|B|c|D|E|F

如果A用户登录,那么他可以查看所有(A,B,C,D,E,F)的详细信息。如果B登录,那么请查看(B,C,D,E,F)和类似的所有。。。如果F登录,那么他只能看到自己的记录。。感谢提前

创建一个函数fetch_parent;

function fetch_parent($parent_id) {
    $query = 'SELECT * FROM `my_table` WHERE `parent_id`='. $parent_id;
    // use your own sql class/function whatever to retrieve the record and store it in variable $parent
    if($parent->parent_id !== null) { // asuming a 'root' record will have null as it's parent id
        fetch_parent($parent->parent_id); // here you go with your recursion
    }
    return;
}

然后用你想要的记录调用函数,它的父母来自:

$first_parent_id = 8;
fetch_parent($first_parent_id);

注:

  • $parent-var也可以是一个数组,这取决于mysql的结果集
  • 请在查询中检查$parent_id以进行mysql注入等