繁体   English   中英

通过递归函数创建树

[英]create tree through recursive function

我有一张桌子

id,name,parent_id,designation列,

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

每个parent_id都在id列中查找,如果用户登录,则用户可以根据parent_id查看自己和所有以下记录。

喜欢

A | B | c | D | E | F

如果一个用户登录,那么他可以全部(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结果集
  • 请您在查询mysql注入等检查$ parent_id。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM