建站极客
网络编程 PHP编程 正文
PHP树的代码,可以嵌套任意层
所属分类:
网络编程 / PHP编程
阅读数:
1504
收藏 0
赞 0
分享
PHP树的代码,可以嵌套任意层
<? file://建立树的主要函数,传递的参数为根节点的编号和根节点的标题 function create_tree($rootid,$roottilte){ print_parent_from_rootsortid($rootid,$roottilte); } file://打印根节点div头的函数 function print_parent_from_rootsortid($rootid,$roottilte){ $parent_fullname="R".$rootid."Parent"; file://div 父级区别标志 $parent_id="R".$rootid; $parent_pic="R".$rootid."img"; echo " <DIV class=parent id=$parent_fullname><A href=\"http://www.csdn.net/expert/menu.shtm#\" onclick=\"expandIt('$parent_id'); return false\"><IMG border=0 height=13 id=$parent_pic src=\"image/folderclosed000.gif\" width=19>$roottilte</A></DIV>"; global $cursor_tree; $Bottom_Flag=0; $len=strlen($rootid)+2; file://子级编码为父级编码长度加2 $query = "SELECT ResourceSortNo,ResourceSortName,SectionBottomFlag From TbSort Where length(ResourceSortNo)=$len and ResourceSortNo like '$rootid%'"; file://sql查询语句 ora_parse($cursor_tree, $query) or die; ora_exec($cursor_tree); $child_fullname="R".$rootid."Child"; file://div 子级区别标志 echo "<DIV class=child id=$child_fullname>"; file://打印一个div子级头 while(ora_fetch($cursor_tree)){ $Sort_No = trim(ora_getcolumn($cursor_tree,0)); $Sort_Title = trim(ora_getcolumn($cursor_tree,1)); $Bottom_Flag = trim(ora_getcolumn($cursor_tree,2)); print_child_from_rootsortid($Sort_Title,$Sort_No, $Bottom_Flag); file://循环调用打印子级编码函数 } echo "</DIV>"; } file://判断是否是末级标志,并且打印子级编码的函数 function print_child_from_rootsortid($Section_Title,$Section_No,$Bottom_Flag){ global $num; $len=2*$num+2; for($j=0;$j<$len;$j++){ echo " "; } file://输出节点之间间距空格的循环 if($Bottom_Flag==1){ echo " <IMG border=0 height=13 src=\"image/folderclosed000.gif\" width=19> <A href=\"http://www.csdn.net/expert/exchange.asp\" target=forum>$Section_Title</A><BR>"; }else{ $p_id="R".$Section_No; $p_pic="R".$Section_No."img"; echo " <IMG border=0 height=13 id=$p_pic src=\"image/folderclosed000.gif\" width=19> <A href=\"http://www.csdn.net/expert/exchange.asp\" onclick=\"expandIt('$p_id'); return false\">$Section_Title</A><BR>"; $child_fullname="R".$Section_No."Child"; echo "<DIV class=child id=$child_fullname>"; file://打印div子标志头 find_allchild_from_rootsortid($Section_No); file://查找子级别内容-----嵌套递归函数甲 echo "</DIV>"; file://打印div子标尾部 } } file://查询所有子级编码的函数 function find_allchild_from_rootsortid($Section_No){ global $handle,$num; $num++; $cursor_ary[$num] = ora_open($handle); $len=strlen($Section_No)+2; file://μ?μ?×ó??±e±ào?3¤?è $query = "SELECT ResourceSortNo,ResourceSortName,SectionBottomFlag From TbSort Where length(ResourceSortNo)=$len and ResourceSortNo like '$rootid%'"; file://sql查询语句 ora_parse($cursor_ary[$num], $query) or die; ora_exec($cursor_ary[$num]); while(ora_fetch($cursor_ary[$num])) { $Sort_Title = trim(ora_getcolumn($cursor_ary[$num],1)); $Sort_No = trim(ora_getcolumn($cursor_ary[$num],0)); $Bottom_Flag = trim(ora_getcolumn($cursor_ary[$num],2)); print_child_from_rootsortid($Sort_Title,$Sort_No,$Bottom_Flag); file://打印所有的子级节点-----嵌套递归函数乙 } $num--; } ?>
CI框架实现创建自定义类库的方法 这篇文章主要介绍了CI框架实现创建自定义类库的方法,结合实例形式分析了CI框架创建自定义类库的相关原理、步骤、实现方法与操作注意事项,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
CI框架附属类用法分析 这篇文章主要介绍了CI框架附属类用法,结合实例形式分析了CI框架附属类相关资源访问操作技巧,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
CI框架网页缓存简单用法分析 这篇文章主要介绍了CI框架网页缓存简单用法,结合实例形式分析了CI框架网页缓存的原理,以及开启缓存、删除缓存等操作技巧,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
php实现的PDO异常处理操作分析 这篇文章主要介绍了php实现的PDO异常处理操作,结合实例形式分析了pdo异常处理的相关原理、用法及操作注意事项,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
php PDO属性设置与操作方法分析 这篇文章主要介绍了php PDO属性设置与操作方法,结合实例形式分析了php pdo常见属性功能及相关的设置、获取操作技巧,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
PHP抽象类基本用法示例 这篇文章主要介绍了PHP抽象类基本用法,结合实例形式分析了php抽象类的概念、原理、定义、使用方法及相关操作注意事项,代码注释包含较为详尽的说明信息,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
PHP面向对象程序设计继承用法简单示例 这篇文章主要介绍了PHP面向对象程序设计继承用法,结合具体实例形式分析了php面向对象程序设计中继承的相关概念、原理、使用技巧与相关操作注意事项,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
PHP实现函数内修改外部变量值的方法示例 这篇文章主要介绍了PHP实现函数内修改外部变量值的方法,涉及php全局变量、传值调用、引用等相关操作技巧,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
PHP命名空间简单用法示例 这篇文章主要介绍了PHP命名空间简单用法,结合具体实例形式分析了php命名空间的简单定义与使用相关操作技巧,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
查看更多