ホームページ >バックエンド開発 >PHPチュートリアル >PHPにおける無限レベル分類の実装方法の解析

PHPにおける無限レベル分類の実装方法の解析

黄舟
黄舟オリジナル
2018-05-15 14:10:101820ブラウズ

この記事の例では、PHPでの無制限分類の実装方法を説明します。参考のために皆さんと共有してください。詳細は次のとおりです。
1. 再帰

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;
}

2. 通常の

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;
}

上記は、PHP の無限分類の実装方法の分析です。 PHP 中国語 Web サイト (www.php .cn)!

関連記事:

phpは無限レベル分類ツリーを再帰的に実装します

phpは再帰的メソッドを使用して無限レベル分類を実装します

php無限レベル分類の原理を明らかにする

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。