public function recursion($data,$pid=0){
// 定义一个变量,存放处理好的元素
static $info= [];
// 搭建循环
foreach($data as $key=>$val){
// 当前记录的pid是上条记录权限ID
if($val['pid']==$pid){
// 赋值
$info[]=$val;
// 递归调用自身查找后代元素
// 函数自身调用自身的过程称为递归
// 当前元素的权限ID是下条记录的父级id
$this->recursion($data,$val['power_id']);
}
}
return $info;
}
无限级分类根据父级id(pid)来递归排序数据展示至视图
这个博客介绍了如何使用PHP实现递归函数来遍历数据结构,特别是当数据包含层级关系时,如权限ID(power_id)作为父子关系的标识。该函数通过比较每个元素的pid与上一个元素的power_id来找出子元素,并进一步递归查找其后代,最终返回一个整理好的元素列表。

被折叠的 条评论
为什么被折叠?



