getAll($sql); $g_db->close ();$list=roletree($roles,0);//Appeler la fonction selon l'identifiant du parent"/> getAll($sql); $g_db->close ();$list=roletree($roles,0);//Appeler la fonction selon l'identifiant du parent">

Maison  >  Article  >  développement back-end  >  Introduction aux méthodes de classification et de tri Infinitus

Introduction aux méthodes de classification et de tri Infinitus

巴扎黑
巴扎黑original
2017-07-18 17:27:561206parcourir

D'abord, la table de données est similaire à celle-ci, puis effectuez une requête de données pour obtenir toutes les données

$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][&#39;ar_name&#39;] = str_repeat(&#39;----&#39;,$v[&#39;ar_level&#39;]).$v[&#39;ar_name&#39;].&#39;<br>&#39;;
}


//将角色经排序
function roletree($arr,$id=0) {
    $subs = array(); // 子孙数组
    foreach($arr as $v) {
        if($v[&#39;ar_parent_id&#39;] == $id) {
            $subs[] = $v;
            $subs = array_merge($subs,roletree($arr,$v[&#39;ar_id&#39;]));
        }
    }
    return $subs;
}

Ensuite, elle est sortie en boucle sur la page statique, l'effet est le suivant :

Celui qui ajoute un subordonné à l'effet d'affichage sera à côté de ce subordonné

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Loi de HornerArticle suivant:Loi de Horner