溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

使用laravel 框架怎么實(shí)現(xiàn)一個(gè)無(wú)限級(jí)分類(lèi)

發(fā)布時(shí)間:2021-04-06 17:17:01 來(lái)源:億速云 閱讀:152 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)使用laravel 框架怎么實(shí)現(xiàn)一個(gè)無(wú)限級(jí)分類(lèi),文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

模型中的代碼

namespace App\models\wxj;
use Illuminate\Support\Facades\DB;
use Session;
class Wxjlx
{
 public function r(){
//輸出數(shù)據(jù)庫(kù)的所有內(nèi)容
  $sql=DB::table('wxjlx')->get();
  //調(diào)用fl方法
  $result=self::fl($sql,$pid=0);
   return $result;
 }
//創(chuàng)建方法 $data參數(shù)是數(shù)據(jù)庫(kù)所有數(shù)據(jù) $pid參數(shù)是數(shù)據(jù)庫(kù)pid $le參數(shù)是為了區(qū)分顯示級(jí)別的
 public function fl($data,$pid=0,$le=0){
//創(chuàng)建一個(gè)靜態(tài)數(shù)組保存數(shù)據(jù)
  static $array=array();
//循環(huán)出所有的有關(guān)數(shù)據(jù)保存進(jìn)數(shù)組
  foreach ($data as $v){
//當(dāng)?shù)谝谎h(huán)是pid==0 因?yàn)樯厦嬉呀?jīng)設(shè)置pid==0
   if($v->pid==$pid){
//這里是為了區(qū)分級(jí)別
    $v->le=$le;
//將有關(guān)數(shù)據(jù)保存如數(shù)據(jù)
    $array[]=$v;
//為了將有關(guān)數(shù)據(jù)保存數(shù)據(jù),這里使用遞歸
    self::fl($data,$v->id,$le+1);
   }
  }
//將最后的內(nèi)容輸出返回
  return $array;
 }
}

控制器代碼,只是為了調(diào)用模型中方法

class WxjlxController extends BaseController
{
 public function r(){
//實(shí)例化模型
  $p=new Wxjlx();
//調(diào)用模型方法
  $a=$p->r();
//將數(shù)據(jù)返回視圖
  return view('wxj/r',['list'=>$a]);
 }
}

視圖中的方法,實(shí)現(xiàn)效果

@foreach($list as $v)
 {{str_repeat('-|',$v->le)}}
 {{$v->id}}
 {{$v->typename}}
 {{$v->pid}}
 <?php echo '<br>'?>
 @endforeach

關(guān)于使用laravel 框架怎么實(shí)現(xiàn)一個(gè)無(wú)限級(jí)分類(lèi)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI