首先数据表类似于这样,然后进行数据查询获取所有的数据
$sql ="select * from ec_admin_role where ar_state=1 order by ar_level";
$roles = $g_db->getAll($sql);
$g_db->close();
$list=roletree($roles,0);//调用函数按父级id进行排序
foreach($list as $k=>$v) {
$list[$k]['ar_name'] = str_repeat('----',$v['ar_level']).$v['ar_name'].'<br>';
}
//将角色经排序
function roletree($arr,$id=0) {
$subs = array(); // 子孙数组
foreach($arr as $v) {
if($v['ar_parent_id'] == $id) {
$subs[] = $v;
$subs = array_merge($subs,roletree($arr,$v['ar_id']));
}
}
return $subs;
}然后在静态页面循环输出,效果如下:

显示效果谁添加下级,那个下级就紧挨着谁
以上就是无限极分类且排序的方法介绍的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号