php无限分类 下拉框
无限分类 下拉框
优势:
填写参数少,只需要指定一个循环节点($parnent_id),就可以循环所有下级分类。
循环输出结构很有特色,比较符合我的口味。
补充: $parent_id才是上下级关联的节点,id,name不用管它
php代码
public function CycleData($parent_id=0){
$where['parent_id'] = $parent_id;
$res = M()->where($where)->select();;
if(empty($res)) return false;
foreach($res as $k=>$v){
$result[$v['id']]['id'] = $v['id'];
$result[$v['id']]['name'] = $v['name'];
$result[$v['id']]['parent_id'] = $v['parent_id'];
$rf = $this->CycleData($v['id']);
if($rf){
foreach($rf as $k=>$vv){
$result[$vv['id']]['id'] = $vv['id'];
$result[$vv['id']]['name'] = " |- ".$vv['name'];
$result[$vv['id']]['parent_id'] = $vv['parent_id'];
}
}
}
return $result;
}
输出:
array(
'1' => array(
'id' => '1',
'parent_id' => '0',
'name' =>'顶级分类一'
),
'2' => array(
'id' => '2',
'parent_id' => '1',
'name' =>' |- 二级分类一'
),
'4' => array(
'id' => '4',
'parent_id' => '2',
'name' =>' |- |- 三级分类一'
),
'5' => array(
'id' => '1',
'parent_id' => '0',
'name' =>'顶级分类一'
),
'3' => array(
'id' => '3',
'parent_id' => '5',
'name' =>' |- 三级分类一'
),
);
下面就是转下拉框数据了,这个就很简单了
php无限分类 下拉框的更多相关文章
- jQuery无限级联下拉框插件
自己编写jQuery插件 之 无限级联下拉框 因为是级联,所以数据必须是树型结构的,我这里的测试数据如下: 看下效果图: 1.>图一: 2.>图二: 3.>图三: 由图可知,下拉 ...
- Yii2下拉框实现
详细介绍yii2下拉框的实现方法,以商品分类的下拉框为例: 第一种方法:使用Html的activeDropDownList(),该方法的优点是:可以自定义下拉框的样式.具体实现如下: 1.控制器中,获 ...
- knockoutjs foreach array绑定 表格 下拉框绑定
转载http://desert3.iteye.com/blog/1480471 knockoutjs foreach array绑定 表格 下拉框绑定 博客分类: Javascript 动态表格使 ...
- jQuery对下拉框Select操作总结
jQuery对下拉框Select操作总结 转自网络,留做备用 jQuery获取Select元素,并选择的Text和Value: 1. $("#select_id").change( ...
- js如何获取select下拉框的value以及文本内容
select下拉框在项目开发中是经常用到的,特别是在联级菜单方面的应用更为广泛.但是,对于一些初学者来说,如何获取下拉框子节点option的value值和文本内容,还是有一点难度的.其他的就不说了,现 ...
- div模拟的下拉框特效
随笔- 4 文章- 0 评论- 0 ? <style type="text/css"> body, ul, li { margin: 0; padding: 0; fo ...
- div模拟的下拉框特效jquery
从网上找来的,感觉不错就拿来分享下 <style type="text/css"> body, ul, li { margin: 0; padding: 0; font ...
- portal开发"下拉框"“日期框”查询要怎么配置
下面的这些是我今天的成果! 总的来说是一步一步摸索出来的!还是等感谢超哥的耐心指导,犯了一些错误! 1.比如在wd配置文件中中写id=“check_it_two”,在java中写成 checki_it ...
- JS实现下拉框选中不同的项,对应显示不同的信息
实现的效果如下图: 页面代码 下拉框: <select id="select3" name="select3" onchange="showli ...
随机推荐
- JUC源码阅读参考文章
(飞哥)http://brokendreams.iteye.com/blog/2252081 (熊猫)http://blog.csdn.net/xiaoxufox/article/details/51 ...
- Java基础之多态性
class A { public void fun1(){ System.out.println("A--->public fun1()"); } public void f ...
- [日常] Go语言圣经-示例: 并发的目录遍历习题
练习 8.9: 编写一个du工具,每隔一段时间将root目录下的目录大小计算并显示出来. package main import ( // "filepath" "fla ...
- [日常] Go语言圣经-匿名函数习题2
练习5.13: 修改crawl,使其能保存发现的页面,必要时,可以创建目录来保存这些页面.只保存来自原始域名下的页面.假设初始页面在golang.org下,就不 要保存vimeo.com下的页面. p ...
- 【CentOS7】CentOS 7 安装 MySQL
转自:http://www.centoscn.com/mysql/2016/0315/6844.html 环境 CentOS 7.1 (64-bit system) MySQL 5.6.24 Cent ...
- C#中Main函数为什么要static
假设没有static关键字,那意味着需要用生成一个实例后才可以调用这个Main方法,而Main方法是程序入口点,你没有进入Main方法,自然无法生成一个实例,既然没有实例,那就无法调用Main函数,岂 ...
- Codeforces292D(SummerTrainingDay06-L 前缀并查集)
D. Connected Components time limit per test:2 seconds memory limit per test:256 megabytes input:stan ...
- HDU3440(差分约束)
House Man Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- ArcGIS基于DEM计算水流方向的方法(D8算法)
ArcGIS采用D8算法计算水流方向(9.3.1后新增),输入数据应首先完成了洼地填充处理: One of the keys to deriving hydrologic characteristic ...
- Oracle 用户、角色管理简介
Oracle 用户.角色管理简介 by:授客 QQ:1033553122 创建用户 形式1:创建名为testacc2的用户 CREATE USER testacc2 IDENTIFIED BY abc ...