if (!function_exists("tier")){
//封闭方法
function tier($arr,$pid=0,$level=1){
//建立空数组
static $res=[];
//循环
foreach ($arr as $val){
//判断
if ($val['pid']==$pid){
$val['level']=$level;
//存入数组中
$res[]=$val;
//递归调用查找后代
tier($arr,$val['主键id'],$level+1);
}
}
return $res;
}
}
// 前端调用
{!!str_repeat(' ',($val['level']-1)*2)!!}{{"├ ".$val['access_name']}}
树状图
if(!function_exists('get_tree_list')){
//引用方式实现 父子级树状结构
function get_tree_list($list){
//将每条数据中的id值作为其下标
$temp = [];
foreach($list as $v){
$v['son'] = [];
$temp[$v['主键id']] = $v;
}
//获取分类树
foreach($temp as $k=>$v){
$temp[$v['pid']]['son'][] = &$temp[$v['主键id']];
}
return isset($temp[0]['son']) ? $temp[0]['son'] : [];
}
}