Maison  >  Article  >  développement back-end  >  Analyse de la méthode d'implémentation de la classification de niveaux infinis en PHP

Analyse de la méthode d'implémentation de la classification de niveaux infinis en PHP

黄舟
黄舟original
2018-05-15 14:10:101793parcourir

L'exemple de cet article décrit la méthode d'implémentation de la classification illimitée en PHP. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
1 Récursif

public function getInfo(){
$data=$this->select();
$arr=$this->noLimit($data,$f_id=0,$level=0);
return $arr;
}
//无限极分类
public function noLimit($data,$f_id=0,$level=0){
static $lists=array();
foreach($data as $key=>$v){
  if($v['f_id']==$f_id){
    $v['level']=$level;
    $lists[]=$v;
    $this->noLimit($data,$v['q_id'],$level+1);
  }
}
return $lists;
}

Ordinaire

public function getInfo(){
$u_id=session('u_id');
$data=$this->join("user join user_role on user.u_id=user_role.u_id join role_quan
 on user_role.j_id=role_quan.j_id join quan on quan.q_id=role_quan.q_id")->
 where("user.u_id=$u_id and quan.f_id=0")->group("quan.q_id")->select();
 foreach($data as $k=>$v){
 $arr=$this->join("user join user_role on user.u_id=user_role.u_id join role_quan
 on user_role.j_id=role_quan.j_id join quan on quan.q_id=role_quan.q_id")->
 where("user.u_id=$u_id and quan.f_id=".$v['q_id'])->group("quan.q_id")->select();
 $data[$k]['son']=$arr;
}

Ce qui précède est. le contenu d'analyse de la méthode de mise en œuvre de la classification de niveau infini PHP, pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

Articles connexes :

implémentation récursive php d'un arbre de classification infini

PHP utilise une méthode récursive pour implémenter la classification infinie

Révéler le principe de la classification infinie en php

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