php目录树创建代码

发布时间:2019-10-11编辑:脚本学堂
本文介绍了php创建目录树的实现代码,有关php生成目录树的方法,有需要的朋友参考下。

 例子,php生成目录树的代码。
 

复制代码 代码示例:

<?php
session_start();
  
include("inc/DBConnect.php");
   $obj=new
DBClass();
   include("inc/function.php");
  /*

   * 直接select * 获取所有数据
 然后放到一个数组中 以menuid加一个字符
作为key

 然后循环 找到有父id的从数组中删除 同时把其加入到
父menudid 的数组的 child中
 
 把最终的到的数组
序列化存储。
 
 下次如果这个有跟新 再跟新这个序列化的文件。
   * 

   *  */
?>

<?php
$sql ="Select * from menu ";
$result =
mysql_query($sql);
while($tmp =
mysql_fetch_assoc($result)){
    $arr[] = $tmp;
}
$temp = $tree = array();
foreach($arr as $k =>
$v){
    $temp[$v['id']] = $v;
}
//引用构造树
foreach($arr
as $k => $v){
   
if(isset($temp[$v['parentid']])){
       
$temp[$v['parentid']]['children'][] =
&$temp[$v['id']];
   
}else{
        $tree[] =
&$temp[$v['id']];
    }
}
echo
'<pre>';print_r($tree);
//递归输出
function get_children($tree, &$step = '', $html =
''){
    foreach($tree as
$v){
        $html .=
"{$step}{$v['name']}<br />";
       
if(isset($v['children'])){
           
$step .=
'---';
           
$html = get_children($v['children'], $step,
$html);
       
}else{
         $step =
'';
        }
   
}
    return $html;
}
$html =
get_children($tree);
echo $html;
?>