PHP 数据库树的遍历方法


Posted in PHP onFebruary 06, 2009

代码如下:

<?php 
session_start(); 
define ('P_S', PATH_SEPARATOR); 
define ('ROOT', "./"); 
set_include_path(ROOT .P_S .'Zend' .P_S .ROOT.get_include_path()); 
//加载ZEND 框架 
require_once ROOT.'Zend/Loader.php'; 
require_once 'usercheck.php';//加载访问权限 
Zend_Loader::loadFile('function.class.php', $dirs='class/', $once=false);//加载函数 
Zend_Loader::loadClass('Zend_Db');//加载数据库类 
Zend_Loader::loadClass('Zend_Config_Ini');//加载配置类 
$config = new Zend_Config_Ini('config.php', 'general');//创建配置对象 
$db = Zend_Db::factory($config->db->adapter,$config->db->config->toArray());//创建数据库对象 
$select=$db->select(); 
$select->from('ResClass',array('lsh','name')); 
$select->where('steps = 1'); 
$rs=$db->fetchAll($select); 
foreach ($rs as $res){ 
echo '    '.$res['lsh'].$res['name']."<br>"; 
Visit($res['lsh'],1); 
} 
function Visit($nodeid,$stept){ 
global $db; 
$recordset = "SELECT lsh,name FROM ResClass WHERE parent=".$nodeid; //搜索nodeid的所有下层节点 
$rs=$db->fetchAll($recordset); 
foreach($rs as $rss){ 
if(!$rss) 
return; //已经是叶子节点,直接返回 
else{ 
for ($i=0;$i<4*$stept;$i++){ 
echo " "; 
} 
echo '    '.$rss['lsh'].$rss['name']."<br>"; 
Visit($rss['lsh'],$stept+1); 
} 
} 
} 
?>
PHP 相关文章推荐
同一空间绑定多个域名而实现访问不同页面的PHP代码
Dec 06 PHP
在PHP中PDO解决中文乱码问题的一些补充
Sep 06 PHP
php实现memcache缓存示例讲解
Dec 04 PHP
php创建sprite
Feb 11 PHP
PHP实现采集中国天气网未来7天天气
Oct 15 PHP
百度实时推送api接口应用示例
Oct 21 PHP
封装ThinkPHP的一个文件上传方法实例
Oct 31 PHP
一个经典实用的PHP图像处理类分享
Nov 18 PHP
yii2.0实现pathinfo的形式访问的配置方法
Apr 06 PHP
php调用自己java程序的方法详解
May 13 PHP
PHP面向对象自动加载机制原理与用法分析
Oct 14 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
一周让你学会PHP 不错的学习资料
Feb 06 #PHP
简化php模板页面中分页代码的解析
Feb 06 #PHP
精通php的十大要点(上)
Feb 04 #PHP
用mysql内存表来代替php session的类
Feb 01 #PHP
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
Jan 30 #PHP
防止MySQL注入或HTML表单滥用的PHP程序
Jan 21 #PHP
php 动态多文件上传
Jan 18 #PHP
You might like
PHP开源开发框架ZendFramework使用中常见问题说明及解决方案
2014/06/12 PHP
php socket通信(tcp/udp)实例分析
2016/02/14 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
用js自动判断浏览器分辨率的代码
2007/01/28 Javascript
DOM相关内容速查手册
2007/02/07 Javascript
javascript 动态数据下的锚点错位问题解决方法
2008/12/24 Javascript
javascript 特殊字符串
2009/02/25 Javascript
JS小框架 fly javascript framework
2009/11/26 Javascript
js的一些常用方法小结
2011/06/29 Javascript
你必须知道的Javascript知识点之&quot;this指针&quot;的应用
2013/04/23 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
2014/04/12 Javascript
Javascript基础教程之变量
2015/01/18 Javascript
JavaScript图片轮播代码分享
2015/07/31 Javascript
JavaScript中利用各种循环进行遍历的方式总结
2015/11/10 Javascript
JS实现设置ff与ie元素绝对位置的方法
2016/03/08 Javascript
详解js树形控件—zTree使用总结
2016/12/28 Javascript
[14:19]2018年度COSER大赛-完美盛典
2018/12/16 DOTA
[01:12:53]完美世界DOTA2联赛PWL S2 Forest vs SZ 第一场 11.25
2020/11/26 DOTA
python将ip地址转换成整数的方法
2015/03/17 Python
python 输入一个数n,求n个数求乘或求和的实例
2018/11/13 Python
Python enumerate函数功能与用法示例
2019/03/01 Python
Python3.5 Pandas模块之Series用法实例分析
2019/04/23 Python
Django 1.10以上版本 url 配置注意事项详解
2019/08/05 Python
基于Python正确读取资源文件
2020/09/14 Python
CSS伪类与CSS伪元素的区别及由来具体说明
2012/12/07 HTML / CSS
亚历山大·王官网:Alexander Wang
2017/06/23 全球购物
瑞典时尚服装购物网站:Miinto.se
2017/10/30 全球购物
美国男士西装打折店:Jos. A. Bank
2017/11/13 全球购物
汽修专业学生自我鉴定
2013/11/16 职场文书
拾金不昧的表扬信
2014/01/16 职场文书
经验丰富大学生村干部自我鉴定
2014/01/22 职场文书
音乐教师求职信
2014/06/28 职场文书
十佳党员事迹材料
2014/08/28 职场文书
批评与自我批评发言稿
2014/10/15 职场文书
导游词开场白
2015/01/31 职场文书
《成长的天空》读后感3篇
2019/12/06 职场文书