PHP 递归实现层级树状展现数据

?

$arr['id'],

'fid' => $arr['fid'],

'name' => $arr['name'],

);

}

// 将数据按照缩进简单排列 见图1

function data2arr($tree, $rootId = 0, $level = 0) {

foreach($tree as $leaf) {

if($leaf['fid'] == $rootId) {

echo str_repeat(' ', $level) . $leaf['id'] . ' ' . $leaf['name'] . '

';

foreach($tree as $l) {

if($l['fid'] == $leaf['id']) {

data2arr($tree, $leaf['id'], $level + 1);

break;

}

}

}

}

}

data2arr($data);

echo '

-----------------------------------

';

// 将数据按照所属关系封装 见图2

function arr2tree($tree, $rootId = 0) {

$return = array();

foreach($tree as $leaf) {

if($leaf['fid'] == $rootId) {

foreach($tree as $subleaf) {

if($subleaf['fid'] == $leaf['id']) {

$leaf['children'] = arr2tree($tree, $leaf['id']);

break;

}

}

$return[] = $leaf;

}

}

return $return;

}

$tree = arr2tree($data);

print_r($tree);

echo '

-----------------------------------

';

// 将数据使用HTML再次展现 见图3

function tree2html($tree) {

echo '';

foreach($tree as $leaf) {

echo '

' .$leaf['name'];

if(! empty($leaf['children'])) tree2html($leaf['children']);

echo '';

}

echo '';

}

tree2html($tree);

?

?

?

图 1:

?图 2:

??图 3:

相关文章

相关视频

php 递归展现城市信息,PHP 递归兑现层级树状展现数据相关推荐

  1. PHP递归实现层级树状展现数据

    树状数据展现很常用,今天学习了PHP的递归,也来总结总结! PHP代码: function _getTreeList_custom1($data,$parent_id,$depth){$return_ ...

  2. php递归实现层级树状展开,PHP递归实现层级树状展开,php递归层级树状_PHP教程...

    PHP递归实现层级树状展开,php递归层级树状 本文实例为大家分享了PHP递归实现层级树状展开的主要代码,供大家参考,具体内容如下 效果图: 实现代码: $arr['id'], 'fid' => ...

  3. mysql php 封装类_PHP递归实现层级树状展开的方法

    这篇文章主要为大家详细介绍了PHP递归实现层级树状展开的相关资料,需要的朋友可以参考下 效果图: 实现代码: $db = mysql_connect('localhost', 'root', 'roo ...

  4. php 数据集转换树、递归重组节点信息多维数组(转)

    一.将数据集转换成树 /*** 将返回的数据集转换成树* @param array $list 数据集* @param string $pk 主键* @param string $pid 父节点名称* ...

  5. 循环神经网络 递归神经网络_如何用递归神经网络预测空气污染

    循环神经网络 递归神经网络 After the citizen science project of Curieuze Neuzen, I wanted to learn more about air ...

  6. 对数据进行递归排序以树状显示

    源数据: id  上级id 1    0 2    0 11   1 21   1 111  11 树状后显示: 1 --11 ---111 2 --21 代码 #region 自定义方法 #regi ...

  7. python递归详解_Python理解递归的方法总结

    递归 一个函数在执行过程中一次或多次调用其本身便是递归,就像是俄罗斯套娃一样,一个娃娃里包含另一个娃娃. 递归其实是程序设计语言学习过程中很快就会接触到的东西,但有关递归的理解可能还会有一些遗漏,下面 ...

  8. 递归的效率问题及递归与循环比较

    1.所谓的递归慢到底是什么原因呢? 大家都知道递归的实现是通过调用函数本身,函数调用的时候,每次调用时要做地址保存,参数传递等,这是通过一个递归工作栈实现的.具体是每次调用函数本身要保存的内容包括:局 ...

  9. 计算机中 递归 的概念,递归是什么?关于递归的详细介绍

    递归,又译为递回,在数学与计算机科学中,是指在函数的定义中使用函数自身的方法.递归一词还较常用于描述以自相似方法重复事物的过程.例如,当两面镜子相互之间近似平行时,镜中嵌套的图像是以无限递归的形式出现 ...

最新文章

  1. IIS监控--自动重启脚本工具
  2. java进城杀不死怎么办_linux – 如何杀死永不死的进程?
  3. 2018python培训-python培训哪里比较好?
  4. css有些效果不显示,css导入成功但没有效果怎么办
  5. what is the thing you fear most?
  6. 太早发文章其实并不是一个好事情
  7. java classloader_Java Classloader原理分析
  8. Windows 7 仅是Windows Vista SP2?
  9. CentOS下yum操作gnome和kde桌面
  10. Juniper 防火墙session拥堵案例解决
  11. Jieba词性对照表
  12. 多线程面试题:词频统计
  13. vue-froala-wysiwyg富文本编辑器
  14. 三种不同的梯度下降算法和正则方程的线性回归预测结果对比
  15. 用k-mer分析进行基因组调查(genome survey):(三)用KMC进行k-mer频数统计
  16. Apostrophe not preceded错误
  17. 10岁小表妹也能“吃透”Geth 客户端 !360秒,快速部署 ICO Token
  18. v u e + ts excel表的导入解析转换 加下载excel表格式(个人笔记)
  19. 【Ubuntu】如何在Ubuntu系统上设置好看的动态壁纸(Komorebi)
  20. dbfs换算_dB单位含义及换算

热门文章

  1. pat 乙级 1022 D进制的A+B(C++)
  2. 什么是节点光端机?总线型光端机有哪些优势?
  3. 【渝粤教育】国家开放大学2018年秋季 1344T金融风险管理 参考试题
  4. 【渝粤教育】广东开放大学 标准化理论与方法 形成性考核 (50)
  5. 【应用】如何更好的简化工业现场采集控制?
  6. bloomfilter的java实现,BloomFilter(布隆过滤器)原理及实战详解
  7. 传感与检测技术,Pt100热电阻测温实验报告,江南大学物联网
  8. mysql把一行保存到另一个表_MYSQL:如何复制整个行从一个表到另一个在MySQL与第二个表有一个额外的列?...
  9. 华为nova7保密柜_华为发布nova8系列新品 轻松拍出Vlog黄金脸占比
  10. jquery解析java对象数组_Javascript / jQuery初学者:将对象推送到数组