您现在的位置是:首页 > 正文

php获取分类_php获取分类下的所有子类方法

2024-01-30 21:45:26阅读 0

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 获取分类下面的所有子类方法: static function getMenuTree($arrCat, $parent_id = 0, $level = 0,$all=True) { static $arrTree; //使用static代替global if(!$all) $arrTree =''; if( empty

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

获取分类下面的所有子类方法:

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 = "";

file_put_contents($filepath.'itemcat.php', $applist);

}

test.jsp?url=http%3A%2F%2Fwww.chinaitlab.com%2Fcms%2Fimages%2Flogo14.gif&refer=http%3A%2F%2FLinux.chinaitlab.com%2FPHP%2F965298.html

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

网站文章

  • springboot踩坑日记——springboot整合jpa报错

    错误信息2022-04-26 08:23:43.656 ERROR 18709 --- [ main] o.s.boot.SpringApplication ...

    2024-01-30 21:45:18
  • js实现iframe路由切换

    页面内嵌套页面,可使用iframe实现。点击切换按钮在上一遍文章。

    2024-01-30 21:45:11
  • H5-meta标签使用大全

    meta标签有下面的作用:搜索引擎优化(提高搜索性能),控制页面功能化。 meta标签的组成:meta标签共有两个属性,它们分别是http-equiv属性和name属性。 1、name属性 name属性主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的。 meta标签的name属性语法格式是:

    2024-01-30 21:45:04
  • 【集合详解】HashMap源码解析

    【集合详解】HashMap源码解析

    一、HashMap概述 二、HashMap的数据结构 三、HashMap源码分析 1.继承 2、关键属性 3、结构 4、构造函数 5、扩

    2024-01-30 21:44:34
  • java xml特殊字符转义_Java中将xml文件转化为json遇到特殊字符会报错!

    前言:我们在项目开发中,有时候调用别人提供的接口,接收到的数据是xml,这时候为了方便后续开发中的使用,需要解析xml并把数据转化成json,今天这篇文章就讲解下如何把xml转化成json,并在这个过...

    2024-01-30 21:44:26
  • 多线程之阻塞队列BlockingQueue简化生产者消费者模式

    在基于阻塞队列构建的生产者—消费者设计中,当数据生成时,生产者把数据放入队列,而当消费者准备处理数据时,将从队列中获取数据。生产者不需要知道消费者的标识或数量,或者它们是否是唯一的生产者,而只需将数据...

    2024-01-30 21:44:20
  • 常用的第三方SDK介绍(搜集中)

    1.验证码 我们开发IT产品时经常要实现注册登录,现在很流行用短信验证码或者语音验证码的形式向客户端发送验证码。 我们开发人员估计都会选用现成的SDK接入实现。比如:创蓝中国 这家专做短信或者语音验证码,或者短信服务。 还有:网易云信 网易云信倒不是专做验证码,可以通过里面的短信模块自己实现验证码。当然网易云信还有其他很多好玩实用的SDK,教学白板就很好玩。 2

    2024-01-30 21:43:48
  • 看完这9本书,让你的编程水平脱胎换骨!(Python篇)

    看完这9本书,让你的编程水平脱胎换骨!(Python篇)

    Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)

    2024-01-30 21:43:41
  • HTML5为什么可以取代Flash(一)

    HTML5为什么可以取代Flash(一)

    AdobeFlash播放器的安全漏洞长久以来都是大麻烦。今夏早些时候,Flash播放器甚至被迫在一周内更新36个安全补丁。 史蒂夫.乔布斯素以反对Flash著称,他在2010年时发表过一份措辞严厉的声明,并拒绝在iPhone上兼容Flash。到2011年,Adobe宣布停止在移动设备上支持Flash播放器。 谷歌最新关于Flash的声明则可能敲响了Flash的丧钟。谷歌Chrome团队宣布将在

    2024-01-30 21:43:33
  • JS 脚本动态执行 动态生成Function / 三个点运算符(扩展运算符)

    最近有个这样的需求,要在我们的后台界面上,让平台使用者可以输入一段脚本,然后在nodejs层,读取这个脚本并执行。并且还要支持自定义输入参数的能力。研究了一下Function的使用,记录在这里。int...

    2024-01-30 21:43:03