网上有很多,这是我自己做测试用的

$arr = array(

array('id'=>1,'name'=>'电脑','pid'=>0),

array('id'=>2,'name'=>'手机','pid'=>0),

array('id'=>3,'name'=>'笔记本','pid'=>1),

array('id'=>4,'name'=>'台式机','pid'=>1),

array('id'=>5,'name'=>'智能机','pid'=>2),

array('id'=>6,'name'=>'功能机','pid'=>2),

array('id'=>7,'name'=>'超级本','pid'=>3),

array('id'=>8,'name'=>'游戏本','pid'=>3),

);

/**

* @param $arr 数组

* @param $id id

* @param $level 层级

* @return array

*/

function demo($arr,$id,$level)

{

$list =array();

foreach ($arr as $k=>$v){

if ($v['pid'] == $id){

$v['level']=$level;

$v['son'] = demo($arr,$v['id'],$level+1);

$list[] = $v;

}

}

return $list;

}

echo "

";

print_r(demo($arr,0,0));

输出结果:

Array

(

[0] => Array

(

[id] => 1

[name] => 电脑

[pid] => 0

[level] => 0

[son] => Array

(

[0] => Array

(

[id] => 3

[name] => 笔记本

[pid] => 1

[level] => 1

[son] => Array

(

[0] => Array

(

[id] => 7

[name] => 超级本

[pid] => 3

[level] => 2

[son] => Array

(

)

)

[1] => Array

(

[id] => 8

[name] => 游戏本

[pid] => 3

[level] => 2

[son] => Array

(

)

)

)

)

[1] => Array

(

[id] => 4

[name] => 台式机

[pid] => 1

[level] => 1

[son] => Array

(

)

)

)

)

[1] => Array

(

[id] => 2

[name] => 手机

[pid] => 0

[level] => 0

[son] => Array

(

[0] => Array

(

[id] => 5

[name] => 智能机

[pid] => 2

[level] => 1

[son] => Array

(

)

)

[1] => Array

(

[id] => 6

[name] => 功能机

[pid] => 2

[level] => 1

[son] => Array

(

)

)

)

)

)

C#无限级分类递归显示示例

PHP无限级分类-递归(不推荐)

[http://www.helloweba.com/view-blog-204.html] 在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性.那么PHP是如何实现无限级分类的呢? ...

PHP无限级分类的实现(不使用递归)

无限级分类在开发中经常使用,例如:部门结构.文章分类.无限级分类的难点在于“输出”和“查询”,例如 将文章分类输出为

  • 列表形式: 查找分类A下面所有分类包含的文章. 1.实现原理 在 ...

(实用篇)PHP递归实现无限级分类

在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性.那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类. 在一些复杂的系统中,要求对信 ...

PHP+MySQL无限级分类(非递归)

要实现无限级分类,递归一般是第一个也是最容易想到的,但是递归一般被认为占用资源的方法,所以很多系统是不考虑使用递归的 本文还是通过数据库的设计,用一句sql语句实现 数据库字段大概如下: 字段 说明 ...

php非递归无限级分类.

项目需要.递归无限级分类效率实在太低.理了半天思路写的. 分类越多效率越高. /** * 单次循环返回无限极分类嵌套 * @param array $data 操作的数组 * @param strin ...

转:php+mysql菜单无限级分类(非递归)

php+mysql无限级分类(非递归) 参考:http://www.chhua.com/web-note3244

PHP不使用递归的无限级分类

不用递归实现无限级分类,简单测试了下性能比递归稍好一点点点,但写得太复杂了,还是递归简单方便点 代码: <?php $list = array( array('id'=>1, 'pid'= ...

PHP迭代与递归实现无限级分类

无限级分类是开发中常见的情况,因此本文对常见的无限极分类算法进行总结归纳. 1.循环迭代实现 $arr = [ 1=>['id'=>1,'name'=>'父1','father'=& ...

随机推荐

iOS系列 基础篇 02 StoryBoard 故事板文件

iOS基础 02 StoryBoard 故事板文件 目录: 1. 故事板的导航特点 2. 故事板中的Scene和Segue 3. 本文最后 在上篇HelloWorld工程中有一个Main.storyb ...

Atomikos的使用过程中要注意的事

在使用Atomikos过程中遇到的一些问题,以作记录: MySQL does not support TMJOIN MySQL does not allow for joining an existi ...

树链剖分&plus;线段树 HDOJ 4897 Little Devil I(小恶魔)

题目链接 题意: 给定一棵树,每条边有黑白两种颜色,初始都是白色,现在有三种操作: 1 u v:u到v路径(最短)上的边都取成相反的颜色 2 u v:u到v路径上相邻的边都取成相反的颜色(相邻即仅有一 ...

thinkphp上传

上传代码 // 缩略图上传 $upload = new \Think\Upload();// 实例化上传类 $upload->maxSize = ;// 设置附件上传大小 $upload-&gt ...

上层建筑——DOM元素的特性与属性(dojo&sol;dom-prop)

上一篇讲解dojo/dom-attr的文章中我们知道在某些情况下,attr模块中会交给prop模块来处理.比如: textContent.innerHTML.className.htmlFor.val ...

poj3249Test for Job(记忆化搜索)

/* 题意:给一个DAG图,n个节点,每个节点都对应一个值,入度为零的点走到出度为零的点,计算所有可能路径 经过节点值的和最大! 思路:记忆话搜索:也就是如果我们搜索到某一个节点的时候发现该节点已经存 ...

PHP Execute Command Bypass Disable&lowbar;functions

先简单说一下php调用mail()函数的过程. 看到源码ext/mail.c 236行: char *sendmail_path = INI_STR("sendmail_path" ...

SGU 194 Reactor Cooling Dinic求解 无源无汇有上下界的可行流

题目链接 题意:有向图中有n(1 <= n <= 200)个点,无自环或者环的节点个数至少为3.给定每条边的最小流量和最大流量,问每条边的可行流量为多少? 思路:一般求解的网络流并不考虑下 ...

append与after区别

append() & prepend()实在元素内插入内容(该内容变成该元素的子元素或节点),after() & before()是在元素的外面插入内容(其内容变成元素的兄弟节点).

HDU 1969(二分法)

My birthday is coming up and traditionally I’m serving pie. Not just one pie, no, I have a number N ...

php无限级分类是什么意思,PHP 无限级分类(递归)相关推荐

  1. php修改新闻分类代码,完整的新闻无限级分类代码,可添加,删除,移动,修改

    //连接数据库教程 $link = mysql教程_connect('localhost','root','密码') or die(mysql_error()); mysql_select_db('s ...

  2. 基准分类模型、分类应用(多分类数字识别、疾病预测、欺诈检测)、监督学习总结

    基准分类模型.分类应用(多分类数字识别.疾病预测.欺诈检测).监督学习总结 目录

  3. 分类(classification)是认知的基础、分类步骤及主要算法、分类与回归的区别、分类过程

    分类(classification)是认知的基础.分类步骤及主要算法.分类与回归的区别.分类过程 目录

  4. SAP MM 启用批次管理的物料,在分类视图里指派023类型分类不是必须的

    SAP MM 启用批次管理的物料,在分类视图里指派023类型分类不是必须的 1,如下物料的分类视图里,没有为该物料指派一个023类型的分类,如下图: 2,MSC1N创建批次记录是可以的,但是分类视图里 ...

  5. ML之分类预测:机器学习中多分类预测数据集可视化(不同类别赋予不同颜色)设计思路及代码实现

    ML之分类预测:机器学习中多分类预测数据集可视化(不同类别赋予不同颜色)设计思路及代码实现 目录 机器学习中多分类预测数据集可视化(不同类别赋予不同颜色)设计思路及代码实现 代码实现

  6. 二分类最优阈值确定_分类模型评价标准,AUC还是Macro F1?

    在人工智能领域,分类任务占据了很大的比例,例如物体识别(计算机视觉).信用卡欺诈(数值型预测).情感分析(自然语言处理)等等.针对众多的分类需求,模型的评价标准只是简单的准确率(Accuracy)吗? ...

  7. Java 中按文件名称分类,按文件大小分类,按照文件类型分类,按照最后修改时间分类的工具类

    在此博客中用到了文件操作的工具类,可以连接 Java中实现复制文件到文件,复制文件到文件夹,复制文件夹到文件,删除文件,删除文件夹,移动文件,移动文件夹的工具类 package cn.edu.hact ...

  8. 无限极分类php简单,创建无限极分类树型结构的简单方法

    先上效果图 顶级分类其实就是一级分类,二级分类也叫作一级分类的子分类,在这个基础上,子分类还可以拥有子分类,这样就构成了无限极分类. 接下来看具体实现的代码: 一.在控制器中按字段查询,查询出所有分类 ...

  9. 计算机网络的分类1:按网络拓扑结构分类,分为星型拓扑、环形拓扑、总线拓扑、树形拓扑、网状拓扑

    计算机网络有七种分类方式 按网络拓扑结构分类 按网络覆盖范围分类 按网络的工作方式分类 按网络传输技术分类 按照使用方式分类 按照网络服务范围分类 按照提供的服务 1.按网络拓扑结构分类 通信子网中转 ...

最新文章

  1. PHP 利用PHPExcel类库批量导出数据
  2. 比可微架构搜索DARTS快10倍,第四范式提出优化NAS算法
  3. 基于Vue.js的后台管理系统组件开发
  4. ASP.NET Core 基础知识(十四)错误处理
  5. C:如何分解整数(从末位往前取以及从首位往后取)
  6. PostgreSQL在何处处理 sql查询之十三
  7. js两个小技巧【看到了就记录一下】
  8. HDU 1827:Summer Holiday(强连通)
  9. java nio 详_java nio详解
  10. Project Chameleon Work In Progress 12
  11. 淘宝为什么不该自己做团购
  12. 小学生都能看懂的生成函数入门教程
  13. 测试用例设计方法_场景法(游戏向)
  14. 无法访问gcr.io的解决办法
  15. 将秒数转换为时分秒的c语言程序,秒数换算(c语言输入秒转化为时分秒)
  16. 从0到1搭建大数据平台之数据计算
  17. linux mysql编译参数,Mysql 编译参数详解
  18. knockoutJs在项目中的使用
  19. 消防给水及消火栓系统技术规范_消防给水与消火栓系统知识点,你学会了没?...
  20. 基于NAS存储的数据备份解决方案

热门文章

  1. nyist737 石子合并
  2. Fama-Macbeth回归:EAP.fama_macbeth
  3. 【java】序列化与反序列
  4. 2018漫画春秋战国
  5. 为什么说博客、论坛的留言版块外链以无效
  6. python gui 框架中显示gif_使用tkinter显示动态gif
  7. 存储器读写c语言程序,单片机IIC接口存储器AT24C04的读写和显示程序(详细注释)...
  8. 星辰变服务器响应超时,星辰变游戏出现突然安装不了怎么办 解决方案一览
  9. 新玺配资:市场洗盘调整 注意捕捉短线机会
  10. 打小都说我聪明,自从学了Linux,我才如梦初醒