22 03 21

//获取指定级别的所有下级
function getChildren($p_id,$array) {

$subs=array();
foreach($array as $item){
if($item['parent_id'] == $p_id){
$subs[]=$item['user_name'];//这里自己看着办,我是获取用户名
$subs=array_merge($subs,$this->getChildren($item['user_id'],$array));
}

}
return $subs;
}
//获取指定级别的所有上级
function getParent($p_id,$array) {

$subs=array();
foreach($array as $item){
if($item['user_id'] == $p_id){
$subs[]=$item['user_name'];//这里自己看着办,我是获取用户名
$subs=array_merge($subs,$this->getParent($item['parent_id'],$array));
}

}
return $subs;
}
$array = User::select('user_id','user_name','parent_id')->get()->toArray();
$childs = getChildren(741,$array);//获取指定级别的所有下级名称
$parents = getParent(741,$array);//获取指定级别的所有上级名称


延伸阅读
  1. php实现macd(移动平均值)
  2. php curl实现get和post
  3. 计算两个日期之间相差时长