php 无限极分类,根据父级 找子级
/**
* @param $data 数据(二维数组格式)
* @param $adminId 管理员ID
* @param $pid 权限的上级ID
* @param int $level 水平变量 默认为 1 自增。
* @return array|\Illuminate\Http\JsonResponse
* 左侧导航,运用无限极分类实现、(循环的方式)
*/
public function leftMenu($data, $adminId,$pid,$level = 1){
try{
$subs = array();
//使用递归方式,循环左侧导航。
foreach ($data $k => $v) {
if($v->pid == $pid){
$v->level=$level;
$subs[]=[
'id' => $v->id,
'admin_name' => $v->name,
'role_id' => $v->role_id,
'pid' => $v->pid,
'title' => $v->title,
'urls' => $v->urls,
'level' => $level
];
$subs = array_merge($subs,self::leftMenu($adminId,$v->id,$level+1));
}
}
return $subs;
}catch (\Exception $e){
return response()->json(['message' => $e->getMessage()]);
}
}
因为使用的是laravel框架 所以我在foreach 循环出来的数据是对象格式的数组 就用到了 ->
php 无限极分类,根据父级 找子级的更多相关文章
- C#无限极分类树-创建-排序-读取 用Asp.Net Core+EF实现
今天做一个管理后台菜单,想着要用无限极分类,记得园子里还是什么地方见过这种写法,可今天找了半天也没找到,没办法静下心来自己写了: 首先创建节点类(我给它取名:AdminUserTree): /// & ...
- DotNet菜鸟入门之无限极分类(一)设计篇
写这个教程的原因,是因为,无限极分类,在许多项目中,都用得到.而对于新手来说,不是很好理解,同时,操作上也有一些误区或者不当之处.所以我就斗胆,抛砖引玉一下,已一个常见的后台左侧频道树为例子,讲解一下 ...
- PHP 商城无限极分类
无限极分类,用的是递归,在外部调用fen()方法即可 index是刚开始寻找的顶级分类,suo是为了在前端展示的时候缩进 ,$suo=){ 一个数组用来返回的 $t=[]; 这是查询数据库的所有内容 ...
- js实现无限极分类
转载注明出处!!! 转载注明出处!!! 转载注明出处!!! 因为要实现部门通讯录,后台传来的数据是直接从数据库里拿的部门表,所以没有层级分类,只有parentId表示从属关系,所以分类的事情就交给我来 ...
- C#无限极分类树-创建-排序-读取 用Asp.Net Core+EF实现之方法二:加入缓存机制
在上一篇文章中我用递归方法实现了管理菜单,在上一节我也提到要考虑用缓存,也算是学习一下.Net Core的缓存机制. 关于.Net Core的缓存,官方有三种实现: 1.In Memory Cachi ...
- PHP无限极分类,多种方法|很简单,这里说的很详细,其它地方说的很不好懂
当你学习php无限极分类的时候,大家都觉得一个字"难"我也觉得很难,所以,现在都还在看,因为工作要用到,所以,就必须得研究研究. 到网上一搜php无限极分类,很多,但好多都是一 ...
- asp.net sql无限极分类实例程序
数据库结构 代码如下 复制代码 create table category( id int, clsno ...
- PHP无限极分类的几种方法
导读:项目开发,经常栏目要做到无限极分类,几种方法PHP无限极分类的几种方法 复制代码 代码如下:namespace Util;class Category{static public functio ...
- thinkphp5.0无限极分类及格式化输出
首先我们来看数据表 从上图中可以发现,中国下有贵州,北京两个子节点,而北京有天安门一个子节点,纽约的子节点是"纽约的子类". 从pid为0看出,中国和纽约是顶级节点. 因为贵州的p ...
随机推荐
- Django学习之十四:Django ORM继承关系
目录 Django ORM继承关系 1. SINGLE_TABLE(django好像不支持) 2. TABLE_PER_CLASS 3. JOINED 4. 代理继承 Django ORM继承关系 参 ...
- springmvc配置访问静态文件
xmlns:mvc="http://www.springframework.org/schema/mvc" <mvc:annotation-driven /><m ...
- django cookie,session,auth
一.最完美的auth auth_user 是用来存储的用户注册的username,password auth 首先需要引入模块 from django.contrib import auth 用户认证 ...
- 14-cmake语法-循环
循环: foreach set(VAR a b c) foreach(f ${VAR}) message(${f}) endforeach() while set(VAR 5) while(${VAR ...
- Centos安装JDK(java环境)
王小私下问我 centos 中 jdk 怎么安装呀,所以再次整理了这篇基础环境搭建的文章. 1.创建java目录2.下载上传jdk3.解压jdk4.配置环境变量 1.创建java目录 首先我们创建ja ...
- ESA2GJK1DH1K基础篇: 测试APP使用SmartConfig绑定Wi-Fi 设备并控制设备
前言 实现功能概要 STM32控制WI-Fi模块以AT指令TCP透传方式连接MQTT服务器, 实现MQTT通信控制. 测试准备工作(详细下载步骤请参考 硬件使用说明 ) 一,下载单片机程序 二,安装A ...
- Java实现递归阶乘
public class Factorial{ public static void main(String[] args){ for (int i = -5; i <= 5; i++) { S ...
- [RN] React Native 使用 react-native-camera 过程中报错 Found react-native-camera 'mlkit' but wasn't required.`
详细报错如下: Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'. Coul ...
- P3258 [JLOI2014]松鼠的新家题解
题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有\(n\)个房间,并且有\(n-1\)根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在"树& ...
- VS Code 安装与配置(使用MSYS2环境与mingw-w64 编译环境)
更正了顺序,之前不知道怎么回事,内容顺序乱了 力求完美.详细,所以希望懂的人留言指点一下. 目前已经开始添加原理解释,希望大家能分享一些gcc gdb C语言等方面优秀链接 后续会慢慢增添内容,修正 ...