社区
基础编程
帖子详情
大家来看下这样的权限树怎么实现?谢谢
lzl8146
2005-06-14 10:26:16
给定节点的编码为(每三个一组向下扩充):
001
001001----(001的子节点)
001002-----(001的子节点)
001002001---(001002的子节点)
001002002
001002003
001003
002
002001
....
根据该编码生成树型目录,希望能用递归和不用递归实现.
...全文
250
8
打赏
收藏
大家来看下这样的权限树怎么实现?谢谢
给定节点的编码为(每三个一组向下扩充): 001 001001----(001的子节点) 001002-----(001的子节点) 001002001---(001002的子节点) 001002002 001002003 001003 002 002001 .... 根据该编码生成树型目录,希望能用递归和不用递归实现.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lzl8146
2005-08-10
打赏
举报
回复
//树的生成算法(非递归算法)
生成菜单对象$menu;
//生成"权限管理"父节点;
$topNode="node";
$$topNode=&menu->additem($text,$link,$current_node);
获得所有的对象列表$currentNode;
for($i=0;$i<count($currentNode);$i++){
$fathercode=substr($currentNode[$i]['classcode'],0,(strlen($currentNode[$i]['classcode'])-3));
//计算父节点名称;
$parnetNode=trim("node".$fathercode);
$prefix_node="node".$current[$i]['classcode'];
$$prefix_node=&$$parentNode->additem($text,$link,$currentNode);
}
bflovesnow
2005-06-20
打赏
举报
回复
找找精华区?
wiwiboy
2005-06-20
打赏
举报
回复
可以新建一个表
插入你的所有的菜单名称,当然要区分一级,二级...
然后写个程序
循环调出一级菜单及其相应二级菜单(子菜单)
lzl8146
2005-06-14
打赏
举报
回复
下面是我写的代码,存在问题,望高手帮忙改正...(感觉思路一开始就是错误的,呵呵)
//树的生成算法(非递归算法)
生成父节点$root_node;
获得所有的对象列表$currentNode;
for($i=0;$i<count($currentNode);){
//获得当前对象$currentNode的父对象编码
$fathercode=substr($currentNode[$i]['classcode'],0,(strlen($currentNode[$i]['classcode'])-3));
if(父对象编码为空){
//以$root_node为父节点生成该节点;
$fatherNode=creatNode($text,$link,$currentNode,$root_node);
for($j=$i+1;$j<count($currentNode);$j++){
$fatherCode=substr($currentNode[$j]['classcode'],0,(strlen($currentNode[$j]['classcode'])-3));
$len=strlen($fatherCode);
if(strcmp(substr($currentNode[$j]['classcode'],0,$len),$fatherCode))==0){
//保留父指针
$nextNode=$fatherNode;
//生成节点的指针
$fatherNode=creatObj($text,$link,$childNode, $nextNode);
}
else{
//如果不是是同级节点
if(strlen($currentNode[$j]['classcode'])!=strlen($currentNode[$j-1]['classcode'])){
$nextNode--;
}
else{ //同级节点
$next=$fatherNode;
$fatherNode(creatObj($text,$link,$childNode,$nextNode);
}
}
}
}
FoolBoy
2005-06-14
打赏
举报
回复
考虑这种思路:
一个函数负责生成树型目录数组
然后直接显示这个数组的内容即可
实际上,这种数据结构不好,如果在ORACLE中,可以考虑这种结构
本级机构ID 上级机构ID 机构其它信息
显示时用connect子句就可以了
梦幻山河
2005-06-14
打赏
举报
回复
顶啊,学习中,等着高手写好的代码!
mary0226
2005-06-14
打赏
举报
回复
关注
-神仙-
2005-06-14
打赏
举报
回复
排好序就可以了
直接根据长度缩进
入门学习Linux常用必会60个命令实例详解doc/txt
虚拟控制台的切换可以通过按下Alt键和一个功能键来
实现
,通常使用F1-F6 。 例如,用户登录后,按一下“Alt+ F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。然后只需按“Alt+...
ASP.NET
树
结构及
权限
树
的设计
1.
树
形结构的设计在开发ASP.NET的项目中,有许多项目用到的
树
形结构,其中有些
树
形结构相对复杂,也有简单的,但无论是简单的
树
形结构还是复杂的
树
形结构,有着好的结构对于性能和稳定性都有着很大的作用。...
基于动态
树
的
权限
管理
其中OID字段是采用的MIB(snmp)中的命名对
树
节点进行描述的一种方法比如(0)表示根节点,(0,1)表示他的一整个孩子,每个节点由其父节点到根节点所有id组成,这样每一个
树
节点就有唯一的OID来表示,并能清楚的知道...
如何给多个子系统设计一个简单通用的
权限
管理方案?(详细讲解及源代码下载)
前天已发过文章分享了刚完成的一个主数据系统,受到了不少朋友的关注,这篇文章主要是对主数据
权限
设计方案的讲解,希望对大家有所帮助。源码下载与运行说明请查看分享一个通用强大的主数据管理系统(架构设计讲解及...
php不同的
权限
显示不同内容,html,css_根据用户登录的
权限
,显示不同的菜单,
权限
及要显示的菜单全是来自后台返回的json数据,html,css,javascript - phpStudy...
首先
实现
用户登录,用户登录时会返回一个用户ID,然后根据用户ID来匹配对应的
权限
ID以及
权限
列表,再遍历转换后的json对象,然后利用合适的标签将
权限
插入页面并显示出来。下面是我写的代码,麻...
基础编程
21,891
社区成员
140,342
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章