首頁 >後端開發 >php教程 >關於Yii Framework框架取得分類下面的所有子類別的方法

關於Yii Framework框架取得分類下面的所有子類別的方法

不言
不言原創
2018-06-15 11:02:271895瀏覽

這篇文章主要介紹了關於Yii Framework框架獲取分類下面的所有子類別的方法,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

Yii是一個基於元件、用於開發大型Web 應用的高效能PHP 框架。 Yii 幾乎擁有了所有的特性,包括MVC、DAO/ActiveRecord、I18N/L10N、caching、基於JQuery 的AJAX 支援、用戶認證和基於角色的存取控制、鷹架、輸入驗證、部件、事件、主題化以及Web 服務等等。

取得分類下面的所有子類別方法:

static function getMenuTree($arrCat, $parent_id = 0, $level = 0,$all=True)
 {
  static $arrTree; //使用static代替global
  if(!$all) $arrTree ='';
  if( empty($arrCat)) return FALSE;
  $level++;
  if($level == 1) $arrTree[] = $parent_id;
  foreach($arrCat as $key => $value)
  {
   if($value['parent_cid' ] == $parent_id)
   {
    //$value[ 'level'] = $level;
    $arrTree[] = $value['cid'];
    unset($arrCat[$key]); //注销当前节点数据,减少已无用的遍历
    self::getMenuTree($arrCat, $value[ 'cid'], $level);
   }
  }
  return $arrTree;
 }

#用上面這個方法的前提是要把分類寫到快取檔案中,快取檔案寫入方法如下:

public function actionIndex2()
 {
 $filepath = Yii::getPathOfAlias('application').'/data/';
 $arr = array();
 $db = Yii::app()->db;
 $listinfo = $db->createCommand("select name,cid,parent_cid,root_cid from item_cat_info")->queryAll();
 foreach($listinfo as $val)
 {
   $arr[$val['cid']] = array('cid'=>$val['cid'],'name'=>$val['name'],'parent_cid'=>$val['parent_cid'],'root_cid'=>$val['root_cid']);
 }

 $applist = "<?php\nreturn ".var_export($arr, true).";\n?>";
 file_put_contents($filepath.&#39;itemcat.php&#39;, $applist);
  }

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

如何透過Yii框架使用魔術方法實現跨檔案呼叫的功能

使用Yii2 rbac權限控制選單menu

以上是關於Yii Framework框架取得分類下面的所有子類別的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn