ThinkPHP採用<volist>實現三級迴圈代碼執行個體_php執行個體

來源:互聯網
上載者:User
本文以執行個體描述了ThinkPHP採用標籤實現三級迴圈代碼,具體操作步驟如下:

1. 三級迴圈需要三維數組,實現代碼如下:

function MakeTree($pid,$level) {  $map['pid'] = $pid; $map['level'] = $level; $result = $this->where($map)->order('rank ASC')->findall(); if($result){  foreach ($result as $key => $value){  $title = $value['alias'];  $list[$title]['id'] = $value['id'];  $list[$title]['pid'] = $value['pid'];  $list[$title]['alias']= $value['alias'];  $list[$title]['title'] = $value['title'];  $list[$title]['level'] = $value['level'];  $list[$title]['state'] = $value['state'];  $list[$title]['rank'] = $value['rank'];  if($value['level']<=3){   $list[$title]['child'] = $this->_MakeSonTree($value['id']); }  } } return $list; } function _MakeSonTree($pid) { $map['pid'] = $pid; $result = $this->where($map)->order('rank ASC')->findall(); if($result){  foreach ($result as $key => $value){  $title = $value['alias'];  $list[$title]['id']= $value['id'];  $list[$title]['pid']= $value['pid'];  $list[$title]['alias']= $value['alias'];  $list[$title]['title'] = $value['title'];  $list[$title]['level'] = $value['level'];  $list[$title]['state'] = $value['state'];  $list[$title]['rank'] = $value['rank'];   if($this->haschild($value['id'])){  //先判斷是否有第三級子類,最後的數組形如$result['child']['grandchild'];   $list[$title]['grandchild']=$this->_MakeSonTree($value['id']);   }  } } return $list;  } function haschild($id){ $result=D('LearningChannel')->where("pid=".$id)->find(); if($result){  return true;  }  else return false; }

2.綁定volist標籤:

 $result=D('Learning') ->MakeTree(0,1);  //dump($result); $this->assign('list',$result);

3.模板部分:

     selected >{$vo.alias}      selected >--{$child.alias}       selected >---{$grand.alias}          
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.