Yii Framework框架获取分类下面的所有子类方法

2015-01-24信息快讯网

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.'itemcat.php', $applist);
  }

PHP中定义数组常量(array常量)的方法
php数组排序usort、uksort与sort函数用法
php中rename函数用法分析
php格式输出文件var_export函数实例
php使用fsockopen函数发送post,get请求获取网页内容的方法
php使用glob函数快速查询指定目录文件的方法
php中strtotime函数用法详解
微信公众号点击菜单即可打开并登录微站的实现方法
PHP判断数据库中的记录是否存在的方法
php中常量DIRECTORY_SEPARATOR用法深入分析
php使用date和strtotime函数输出指定日期的方法
javascript some()函数用法详解
php5.3提示Function ereg() is deprecated Error问题解决方法
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
Yii框架中 find findAll 查找出制定的字段的方法对比
Yii使用find findAll查找出指定字段的实现方法
Yii查询生成器(Query Builder)用法实例教程
Yii 快速,安全,专业的PHP框架
Yii中render和renderPartial的区别
将酷狗krc歌词解析并转换为lrc歌词php源码
windows下配置apache+php+mysql时出现问题的处理方法
ThinkPHP访问不存在的模块跳转到404页面的方法
php数组合并array_merge()函数使用注意事项
ThinkPHP3.1新特性之G方法的使用
php获取网页中图片、DIV内容的简单方法
PHP两种去掉数组重复值的方法比较
ThinkPHP CURD方法之order方法详解
Yii结合CKEditor实现图片上传功能
在Yii框架中使用PHP模板引擎Twig的例子
PHP中多维数组的foreach遍历示例
Codeigniter出现错误提示Error with CACHE directory的解决方案
Codeigniter中禁止A Database Error Occurred错误提示的方法
PHP开源开发框架ZendFramework使用中常见问题说明及解决方案
PHP命名空间(Namespace)简明教程
PHP、Nginx、Apache中禁止网页被iframe引用的方法
PHP+memcache实现消息队列案例分享
yii框架配置默认controller和action示例
yii框架通过控制台命令创建定时任务示例
yii框架builder、update、delete使用方法
©2014-2024 dbsqp.com