手机版

PHP递归实现层级树状展�

时间:2021-11-04 来源:互联网 编辑:宝哥软件园 浏览:

本文实例为大家分享了服务器端编程语言(专业超文本预处理器的缩写)递归实现层级树状展开的主要代码,供大家参考,具体内容如下

效果图:

实现代码:

?PHP $ db=MySQL _ connect(' localhost ',' root ',' root ')或' die('无法连接到数据库');mysql_select_db(“测试”)或' die('找不到数据库:测试’);$result=mysql_query('从树中选择id、fid、名称');while($ arr=MySQL _ fetch _ array($ result)){ $ data[]=array(' id '=$ arr[' id '],' fid'=$arr['fid'],' name'=$arr['name'],);} //将数据按照缩进简单排列见图一函数data2arr($tree,$rootId=0,$ level=0){ foreach($ tree as $ leaf){ if($ leaf[' FID ']=$ rootId){ echo str _ repeat(',level $).$leaf['id'].$leaf['name'].br/';foreach($ tree as $ l){ if($ l[' FID ']==$leaf['id']){ data 2ar($ tree,$ leaf[' id '],level 1);打破;} } } } } data 2ar($ data);echo ' br/-br/';//将数据按照所属关系封装见图2函数arr2tree($tree,$ rootId=0){ $ return=array();foreach($ tree as $ leaf){ if($ leaf[' FID ']==$ rootId){ foreach($ tree as $ sub haf){ if($ sub haf[' FID ']=$ leaf[' id ']){ $ leaf[' children ']=arr 2 tree($ tree,$ leaf[' id ']);打破;} } $ return[]=$ leaf;} } return $ return } $ tree=arr 2 tree($ data);print _ r($ tree);echo ' br/-br/';//将数据使用超文本标记语言再次展现见图3函数tree 2 html($ tree){ echo ' ul ';foreach ($ tree as $ leaf){ echo ' Li } .$ leaf[' name '];if(!emptyempty($ leaf[' children ']))tree 2 html($ leaf[' children ']);回声/李;} echo '/ul ';} tree 2 html($ tree);以上就是本文的全部内容,希望对大家学习服务器端编程语言(专业超文本预处理器的缩写)程序设计有所帮助。

版权声明:PHP递归实现层级树状展�是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。