Model

    /*** 获取所有的分类,并与树形显示*/public function getAllTreeMenusList(){$data = self::select()->toArray();return self::_generateTree($data);}private static function _generateTree ($data, $pid = 0) {$tree = [];if ($data && is_array($data)) {foreach($data as $v) {if($v['parent_id'] == $pid) {$tree[] = ['id' => $v['id'],'name' => $v['name'],'parent_id' => $v['parent_id'],'children' => self::_generateTree($data, $v['id']),];}}}return $tree;}

Controller

<?php
/*** Created by.* User: Jim* Date: 2020/12/8* Time: 10:00*/namespace app\admin\controller;use app\admin\controller\master\Common;
use app\admin\libs\traits\AdminCrud;
use app\admin\model\EdmMenu;class Edm extends Common
{use AdminCrud;public function getAllTreeMenusList(){$edmMenus = new EdmMenu();$data = $edmMenus->getAllTreeMenusList();dd($data);}}

效果图

thinkphp递归实现无限极子分类children相关推荐

  1. php创建多级栏目_PHP 实现无限极栏目分类

    首先,创建一个DB CREATE TABLE IF NOT EXISTS `class` ( `id` mediumint(6) NOT NULL AUTO_INCREMENT, `title` va ...

  2. PHP递归实现无限极分类

    PHP递归实现无限极分类 摘要 今天在编码的时候要用到二级的栏目分类,所以顺便就把无限极分类给整理了一下,采用的是递归方法 //实现无限级分类public function getTree(){$ca ...

  3. php 递归实现无限极分类和排序_Laravel框架实现无限极分类

    php中文网最新课程 每日17点准时技术干货分享 最近开发商品功能,在尝试递归和引用方式后,蓦然回首,突然发现laravel框架有更简单高效的实现方式,无限极分类最佳实践,open code与大家共享 ...

  4. php 递归实现无限极分类和排序_无限极分类的两种方式,递归和引用

    说到无限极分类,比较常见的做法是在建表的时候,增加一个parnet_id字段用来区别自己所属的分类(是顶级分类还是子分类) 由于展示数据的时候,需要表达出这种所属关系,所以必然要在读取数据的时候进行一 ...

  5. php 递归实现无限极分类和排序_php 无限极分类以及使用递归实现的排序方法

    至于添加删除之类的功能我就不多写了!仔细看看就知道这么用了. 难的是显示方面 希望高手扩展一下! 这是类 代码如下:<?php /*=============================== ...

  6. php无极分类非递归_无限极分类算法,对你一定有帮助

    无限级分类是开发中常见的情况,也经常会在面试,主考官问到,笔试中遇到,因此本文对常见的无限极分类算法进行总结归纳,其实大多数就是迭代与递归. 1.循环迭代实现 $arr = [1=>['id'= ...

  7. php不使用递归实现无限极分类

    无限极分类常用的是递归,但是比较不好理解,其实可以用数据库path,pid两个字段的设计来实现无限分类的功能 1.数据库设计 通过上图可以看出pid就是该栏目的父id,而path = 父path+pi ...

  8. php 递归实现无限极分类和排序_PHP无限级分类实现层级值间用字符串拼接

    题目: 如下数组,实现这么一个结果value=10-101-1011,label=万达-蜘蛛侠-已购票,其实就是层级值间用字符串拼接. $example=array(array('value'=> ...

  9. php 递归实现无限极分类和排序_php递归无限极分类

    递归无限级分类有几种形式,我这里仅仅举例比較经常使用的三种: 第一种:返回有排序的数组: $data = array( 1 => array( 'id' => 1, 'pid' => ...

最新文章

  1. 编程珠玑 15.3生成文本
  2. Python3最长连续递增序列问题
  3. SubSonic中的字段付值--MakeOld Update
  4. Python数据结构与算法(一)--算法和时间复杂度
  5. C++如何使用MySQL数据库
  6. flask get 参数_Python web 用它5分钟以后,我放弃用了四年的 Flask
  7. 不同模块下包重名怎么解决_注册公司核名通不过,疑难核名有办法解决吗?
  8. Spring生态系统(Spring可能大家都在用,很少去关注整体架构)
  9. Jcreator Pro 使用技巧
  10. 托业单词表part1
  11. 软件测试员的日常逗逼瞬间
  12. 前端性能优化之WebP图片
  13. Linux内核深入理解定时器和时间管理(6):x86_64 相关的时钟源(kvm-clock,tsc,acpi_pm,hpet)
  14. 家庭无线路由器桥接设置
  15. DDOS与DDOS追踪的介绍
  16. 最新论文笔记(+15):Redactable Blockchain Protocols with Instant Redaction /IACR Cryptol.ePrint Arch 2021
  17. RT-Thread ——RTC配置
  18. 电场与磁场中的物理量
  19. 2021年R2移动式压力容器充装考试总结及R2移动式压力容器充装模拟考试
  20. 智力扣(1)——对称扣

热门文章

  1. Debian/Ubuntu上最快的QQ/微信安装方式
  2. VMware提示恢复快照时出错找不到所需文件
  3. c语言如何把小数变成分数,这是把小数转换成分数的程序,可是输入0.6666无限循环...
  4. 直接修改gba_修改GBA游戏本身
  5. 网络综合实验拓扑VLAN+TRUNK(链路聚合)+MSTP+VRRP+DHCP+OSPF+静态路由+ACL+地址转换
  6. 手写apply、call、bind(大量代码)
  7. 谁动了山寨之父联发科的奶酪(一)
  8. 2.Request爬取豆瓣短评
  9. atompark:外贸工具-Atomic 6合一系列产品-Crack
  10. 三坐标测量时为什么要进行测头校验