查询所有子节点,包含节点本身(遍历树形菜单)
来源:互联网 发布:ue boom 2软件 编辑:程序博客网 时间:2024/05/19 20:59
<?php
class Wms_Tree
{
var $table='ot_departments';/**set default table name**/
function get_AllCID($cid)
{
$depts = array();
$depts = $this->findAllData();
$result=array();
$this->findsub($depts,$cid,$result);
return $result;
}
function findAllData(){
global $db;
$tree = array();
$rs = $db->query("select * from ".$this->table." where 1 ");
while($data = $db->fetchNextObject($rs)){
$tree[] = array('id'=>$data->id,'pid'=>$data->pid,'name'=>$data->name,'memo'=>$data->memo);
}
return $tree;
}
function findsub($a,$ids,&$result){
if(!is_array($ids)) $ids=array($ids);
foreach ($ids as $d){
$result[] = $d;
}
$dds =array();
foreach ($ids as $d){
foreach($a as $aa){
if($aa['pid']==$d){
$dds[] = $aa['id'];
}
}
}
if(empty($dds)) return $result;
else $this->findsub($a,$dds,$result);}
}
?>
使用的时候只要先将这个类实例化,再使用就可以了
require_once('class/wms.tree.php');
$tree = new Wms_Tree();
$cids = $tree->get_AllCID($_GET['dept']);
- 查询所有子节点,包含节点本身(遍历树形菜单)
- ORACLE 树形遍历查询根节点、父节点、子节点
- ORACLE 树形遍历查询根节点、父节点、子节点
- 树形节点的所有子节点的遍历
- 动态查询一个树形结构表中:某一个节点的所有父节点或者子节点
- mysql获取某节点ID的所有子节点(包括他本身)
- mysql读取树形结构所有子节点 mysql递归查询 详解 存储过程详解 查询所有子节点详解
- 函数查询所有子节点
- 父子关系表中查询某父节点的所有子节点,同时查询结果包含父节点的名字
- SQL 树形菜单查询,查询本身和所有下级项
- T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)
- T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)
- T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)
- T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)
- T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)
- 树形结构地柜查询子节点
- MSSQL 查询所有节点及其所有子节点的函数
- 删除菜单下所有子节点信息
- Android新浪微博开发(三)主UI的实现:用BaseAdapter做适配器的LsitView
- ZOJ 3321
- 7、挂载(mount)命令使用技巧
- Android--Listview横向滑动
- 8、关于终端中文的方法
- 查询所有子节点,包含节点本身(遍历树形菜单)
- VC CDC 加载位图 伸缩位图 源代码
- 9、实现虚拟机与PC机共享最简单方法
- 谷歌 chrome浏览器眼睛保护色设置
- 用flex & bison (lex & yacc)创建可重入(线程安全)的词法分析和语法解析器
- Android中的android:layout_width和android:width
- 1、linux内核移植
- Hibernate SQLQuery 查询Oracle char类型结果为一个字符的解决方法
- Error in an XML file: aborting build