码迷,mamicode.com
首页 > Web开发 > 详细

PHP递归所有下级

时间:2020-06-23 22:53:48      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:gui   string   style   UNC   reac   重复   foreach   ack   function   

/**
 * 获取用户下属ID集合
 * @param $uid int
 * @param $ids string
 * @author jack
 * @throws string
 * @return string
 */
public function getUnderlingUIds($uid, $ids=‘‘)
{
    $back = Db(‘ns_member‘,‘‘,false)->field(‘uid‘)->where(‘parent_uid‘,$uid)->select();
    if (!empty($back) && is_array($back)) {
        foreach ($back as $v) {
            //防止当前人的ID重复去查询,形成恶性循环
            if ($v[‘id‘] == $uid) {
                continue;
            }
            $back2 = Db(‘ns_member‘,‘‘,false)->where(‘parent_uid‘,$v[‘uid‘])->count(‘uid‘);
            if ($back2 > 0) {
                $ids = $this->getUnderlingUIds($v[‘uid‘],$ids);
            } else {
                $ids .= ‘,‘.$v[‘id‘];
            }
        }
     }
    $ids = $uid.‘,‘.$ids.‘,‘;
    $ids = str_replace(‘,,‘, ",", $ids);
    $ids = trim($ids, ‘,‘);
    return $ids;
}

 

PHP递归所有下级

标签:gui   string   style   UNC   reac   重复   foreach   ack   function   

原文地址:https://www.cnblogs.com/dawuge/p/13184989.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!