Yii Framework框架獲取分類下面的所有子類方法
更新時間:2014年06月20日 09:58:58 投稿:hebedich
Yii是一個基于組件、用于開發(fā)大型 Web 應(yīng)用的 高性能 PHP 框架。Yii 幾乎擁有了 所有的特性 ,包括 MVC、DAO/ActiveRecord、I18N/L10N、caching、基于 JQuery 的 AJAX 支持、用戶認(rèn)證和基于角色的訪問控制、腳手架、輸入驗證、部件、事件、主題化以及 Web 服務(wù)等等。
獲取分類下面的所有子類方法:
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]); //注銷當(dāng)前節(jié)點數(shù)據(jù),減少已無用的遍歷 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.'itemcat.php', $applist); }
您可能感興趣的文章:
- 記錄Yii2框架開發(fā)微信公眾號遇到的問題及解決方法
- 使用YII2框架實現(xiàn)微信公眾號中表單提交功能
- 完美利用Yii2微信后臺開發(fā)的系列總結(jié)
- Yii PHP Framework實用入門教程(詳細(xì)介紹)
- YII Framework框架使用YIIC快速創(chuàng)建YII應(yīng)用之migrate用法實例詳解
- YII Framework框架教程之使用YIIC快速創(chuàng)建YII應(yīng)用詳解
- YiiFramework入門知識點總結(jié)(圖文教程)
- YII Framework框架教程之緩存用法詳解
- YII Framework框架教程之國際化實現(xiàn)方法
- YII Framework框架教程之安全方案詳解
- Yii Framework框架開發(fā)微信公眾平臺示例
相關(guān)文章
laravel通過創(chuàng)建自定義artisan make命令來新建類文件詳解
Laravel通過Artisan提供了強(qiáng)大的控制臺命令來處理非瀏覽器業(yè)務(wù)邏輯。下面這篇文章主要給大家介紹了關(guān)于laravel如何通過創(chuàng)建自定義artisan make命令來新建類文件的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-08-08Laravel框架執(zhí)行原生SQL語句及使用paginate分頁的方法
這篇文章主要介紹了Laravel框架執(zhí)行原生SQL語句及使用paginate分頁的方法,以類函數(shù)的形式給出了Laravel框架執(zhí)行原生SQL語句以及paginate分頁的相關(guān)操作技巧,需要的朋友可以參考下2018-08-08laravel技巧之查詢構(gòu)造器Query Builder疊加鏈?zhǔn)秸{(diào)用的方法
這篇文章主要給大家介紹了關(guān)于laravel技巧之查詢構(gòu)造器Query Builder疊加鏈?zhǔn)秸{(diào)用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友下面來一起看看吧。2017-12-12