php无限循环分类,php实现无限分类功能
应用场景
导航栏分类(如商品、课程、城市等)文件夹数据库设计
主要的三个字段:主键id、父级id、名称title。
CREATE TABLE `t_cate` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`pid` int(11) NOT NULL COMMENT '父级id',
`title` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
数据表数据
逻辑
判断依据是:子类的父级id是否等于父级的id
代码实现
// 连接数据库
$db = mysqli_connect('127.0.0.1','root','123456','test');
$sql = 'SELECT * FROM t_cate';
$exe_res = mysqli_query($db, $sql);
$data = mysqli_fetch_all($exe_res,MYSQLI_ASSOC);
// print_r($data);
// 循环 判断 递归
function getTree($arr,$pid=0,$level=1){
static $list = [];
foreach ($arr as $key => $value) {
// 判断子类的父级id 是否等于 父级的id
if($value['pid'] == $pid){
$value['level'] = $level;
$list[] = $value;
unset($arr[$key]); // 删除已排好的数据,减少循环次数
getTree($arr,$value['id'],$level+1); // 递归函数
}
}
return $list;
}
结果展示
这只是简单的实现无限分类功能,虽然在项目开发中还会有其他细节要注意,但是逻辑思路都是一样的。
「实例」php打印星星金字塔
php无限循环分类,php实现无限分类功能相关推荐
- C语言fscanf的eof无限循环,使用fscanf时无限循环
我用C编写了这个简单的程序,因为我现在正在大学学习FILES.我带了一个txt文件,其中包含最后一场比赛的结果列表,所以我的程序将按照我的要求显示格式化的数据.这是我的代码: /* Esercizio ...
- css动画无限循环转圈,css3 – 具有无限循环的链CSS动画
简而言之,没有(一些可以解决的问题) 你的行动画计数:infinte当前正在做的是元素:动画:ani1 3s 0s无限,ani2 3s 9s无限;因此,由于声明的第一个动画的迭代次数为无限,因此永远不 ...
- php无限极 left right,php无限极分类实现的两种解决方法
本篇文章介绍了,在php中无限极分类实现的两种解决方法.需要的朋友参考下 method of classify one<?php /* reader: 这是自己写的无限极分类实现方法 里面的编辑 ...
- php无极限分类讲解,php无限极分类入门教程
这篇文章主要介绍了PHP无限极分类函数的实现方法,结合实例形式详细分析了php实现无限极分类的具体思路.实现代码与相关注意事项,需要的朋友可以参考下本文实例讲述了PHP无限极分类函数的实现方法.分享给 ...
- php承载,javascript,php_如何防止无限循环的php CPU承载过重?,javascript,php - phpStudy...
如何防止无限循环的php CPU承载过重? 我写了一只程序,专门在抓某个api 的所提供的数据.然而,为了防止每次insert新数据料后,就必被把旧的数据状态改掉.(不能一直用insert,因为有可能 ...
- Android架构师谈:View-Pager-性能优化之-无限循环
作者:享学课堂Alvin老师 转载请声明出处! ViewPager实现无限滑动 **方案一:**将viewpager上限设置成一个很大的数,第一个页面设置到中间.然后滑动的时候,用当前的序号与view ...
- 如何解决 React.useEffect() 的无限循环
作者:Shadeed 译者:前端小智 来源:dmitripavlutin 点赞再看,微信搜索**[大迁世界],B站关注[前端小智]**这个没有大厂背景,但有着一股向上积极心态人.本文 GitHub h ...
- 【骚气的动效】无限循环往下往复淡入淡出运动,通常用于向下箭头,提示用户可以往下滚动或者点击展开
/* 无限循环往下往复淡入淡出运动 */%auto-down-animate {animation: auto-down-animate 1s ease-in-out infinite;-moz-an ...
- php easyui tree 结构,EasyUI Tree树组件无限循环的解决方法
在学习jquery easyui的tree组件的时候,在url为链接地址的时,发现如果最后一个节点的state为closed时,未节点显示为文件夹,单击会重新加载动态(Url:链接地址)形成无限循环. ...
- python无限循环条件循环_Python - 条件控制、循环语句 - 第十二天
Python 条件控制.循环语句 end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: Python 条件语句是通过一条或多条语句的执行结果(True 或 ...
最新文章
- 四川大学计算机学院夏欣,自适应窗口的图像平滑去噪.pdf
- (数据挖掘-入门-1)基于用户的协同过滤之最近邻
- PPT科研绘图之棱台
- 谷歌技术三宝之BigTable
- python readline_16.8. readline — GNU readline 接口 — Python 2.7.18 文档
- OpenCV笔记(十五)——使用Laplace算子进行图像的边缘检测
- 不同分支设置不同的远程仓库
- OpenShift 4之设置用户/组对项目的访问权限
- angular js 使用pdf.js_胶水(框架) Stencil.js
- Fluent Ribbon 第八步 其他控件
- 3 Machine-Level Representation 程序的机器级表示
- 【电路仿真】基于matlab simulink三相桥式全控整流电路【含Matlab源码 332期】
- Android文件资源(raw/data/asset)的存取
- linux里的.mht是什么文件,mht是什么文件?打开mht文件的方法
- Hbase meta表介绍
- 计算机无法访问e盘,win10系统E盘拒绝访问的详细方法
- python中奖号_python制作一个简单的中奖系统
- Sony索尼HLG灰片电影调色LUT预设合集 HLG CINEMATIC LUTPACK BUNDLE
- Ubuntu 安装 uWSGI
- 格式化字符串你都懂了吗