PHP 數(shù)據(jù)庫(kù)樹(shù)的遍歷方法
更新時(shí)間:2009年02月06日 02:54:32 作者:
PHP數(shù)據(jù)庫(kù)樹(shù)的遍歷方法
代碼如下:
<?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';//加載訪問(wèn)權(quán)限
Zend_Loader::loadFile('function.class.php', $dirs='class/', $once=false);//加載函數(shù)
Zend_Loader::loadClass('Zend_Db');//加載數(shù)據(jù)庫(kù)類
Zend_Loader::loadClass('Zend_Config_Ini');//加載配置類
$config = new Zend_Config_Ini('config.php', 'general');//創(chuàng)建配置對(duì)象
$db = Zend_Db::factory($config->db->adapter,$config->db->config->toArray());//創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象
$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的所有下層節(jié)點(diǎn)
$rs=$db->fetchAll($recordset);
foreach($rs as $rss){
if(!$rss)
return; //已經(jīng)是葉子節(jié)點(diǎn),直接返回
else{
for ($i=0;$i<4*$stept;$i++){
echo " ";
}
echo ' '.$rss['lsh'].$rss['name']."<br>";
Visit($rss['lsh'],$stept+1);
}
}
}
?>
復(fù)制代碼 代碼如下:
<?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';//加載訪問(wèn)權(quán)限
Zend_Loader::loadFile('function.class.php', $dirs='class/', $once=false);//加載函數(shù)
Zend_Loader::loadClass('Zend_Db');//加載數(shù)據(jù)庫(kù)類
Zend_Loader::loadClass('Zend_Config_Ini');//加載配置類
$config = new Zend_Config_Ini('config.php', 'general');//創(chuàng)建配置對(duì)象
$db = Zend_Db::factory($config->db->adapter,$config->db->config->toArray());//創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象
$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的所有下層節(jié)點(diǎn)
$rs=$db->fetchAll($recordset);
foreach($rs as $rss){
if(!$rss)
return; //已經(jīng)是葉子節(jié)點(diǎn),直接返回
else{
for ($i=0;$i<4*$stept;$i++){
echo " ";
}
echo ' '.$rss['lsh'].$rss['name']."<br>";
Visit($rss['lsh'],$stept+1);
}
}
}
?>
相關(guān)文章
php簡(jiǎn)單實(shí)現(xiàn)發(fā)送帶附件的郵件
這篇文章主要介紹了php簡(jiǎn)單實(shí)現(xiàn)發(fā)送帶附件的郵件,涉及附件上傳及郵件發(fā)送的相關(guān)技巧,需要的朋友可以參考下2015-06-06PHP中include和require的區(qū)別實(shí)例分析
網(wǎng)上太多關(guān)于PHP中include與require區(qū)別。然而事實(shí)真的如此嗎,今天我們就通過(guò)一個(gè)具體的實(shí)例來(lái)簡(jiǎn)單分析驗(yàn)證下2017-05-05PHP的mysqli_query參數(shù)MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的區(qū)別
這篇文章主要介紹了PHP的mysqli_query參數(shù)MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的區(qū)別,本文給出了這兩個(gè)參數(shù)的5個(gè)區(qū)別,需要的朋友可以參考下2014-09-09Linux下進(jìn)行MYSQL編程時(shí)插入中文亂碼的解決方案
Linux下進(jìn)行MYSQL編程時(shí)插入中文亂碼的解決方案...2007-03-03php實(shí)現(xiàn)無(wú)限級(jí)分類(遞歸方法)
當(dāng)你學(xué)習(xí)php無(wú)限極分類的時(shí)候,大家都覺(jué)得一個(gè)字“難”我也覺(jué)得很難,所以,現(xiàn)在都還在看,因?yàn)楣ぷ饕玫?,所以,就必須得研究研究?/div> 2015-08-08php去掉URL網(wǎng)址中帶有PHPSESSID的配置方法
這篇文章主要介紹了php開(kāi)發(fā)的網(wǎng)站網(wǎng)址中帶有PHPSESSID的解決辦法,也就是把PHP的跨頁(yè)傳遞SESSION選擇在php.ini中關(guān)閉,這樣這個(gè)參數(shù)就不會(huì)出現(xiàn)在URL中了,需要的朋友可以參考下2014-07-07最新評(píng)論