实现无限极分类

本文介绍了一种使用PHP实现的递归方法,该方法能够构建出一个基于给定权限ID的权限树。通过递归地查找子权限节点,并适当地缩进显示,使得最终输出的权限结构清晰易读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*
 * 递归获取所有权限
 *
 * */
public function getTree ( $arr,$pid=0,$step=0,$except_id=false ) {
    static $tree = [];
    foreach ( $arr as $key=>$val ) {
        //修改时,排除当前id的所有子类
        if ( $val['id'] == $except_id ) {
            continue;
        }
        //查找所有子分类
        if ( $val['auth_pid'] == $pid ) {
            $flg = str_repeat('***',$step);
            $val['auth_name'] = $flg.$val['auth_name'];
            $tree[] = $val;
            $this->getTree($arr , $val['id'] ,$step+1,$except_id);
        }
    }
    return $tree;
}

【精选秒杀】热卖云产品限量抢,云服务器20元/月起,服务稳定,价格更优
https://cloud.tencent.com/redirect.php?redirect=1039&cps_key=8ee0f9c89dfe0958071ea9b77e110670&from=console

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值