這篇文章主要介紹了thinkPHP實現遞歸循環欄目並按照樹形結構無限極輸出的方法,涉及thinkPHP數據庫查詢,數組遍歷與字符串操作等技巧,需要的朋友可以參考下
#本文實例講述了thinkPHP實作遞歸循環欄位並依照樹狀結構無限極輸出的方法。分享給大家供大家參考,具體如下:
這裡使用thinkphp遞歸循環欄目按照樹形結構無限極輸出,並保存為一個數組,利於模板調用
具體程式碼如下:
private function categoryTree($parentid,$level) //因为是本类中使用所以定于为私有函数 { $Category= D('Category'); $result = $Category->where("`parentid`=".$parentid)->order("listorder desc,catid desc")->select(); if($result) { $count=count($result);//当前子栏目个数 $level++;//子栏目层级 foreach($result as $v) { $index++; if($count==$index) $step="└─"; else $step="├─"; $step.=str_repeat(' ',$level-1); $nbsp=str_repeat(' ',$level-1); $nstr=$nbsp.$step; if($parentid==0) $nstr=''; $v['step']=$nstr; $newData[$v['catid']]=$v; //echo $nstr.$v['catname']."<br />"; if($v['child']==1)//如果有子栏目 { $newData=$newData+$this->categoryTree($v['catid'],$level); } } } return $newData; }
php遞迴欄位儲存為陣列
相關推薦:
以上是thinkPHP實作遞歸循環欄位並依照樹狀結構無限極輸出的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!