免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1480 | 回复: 5
打印 上一主题 下一主题

我还是认为用bit做权限更简单 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-05 23:51 |只看该作者 |倒序浏览
我还是认为用bit做权限更简单,比如说:
A  00001
B  00010
C  00100
D  01000
E  10000
A,B,C,D,E是四个权限
如果全县策略是01010,即B,D两个权限

如果我们需要测试是否具有B权限,只需要
00010 & 01010 = 00010 有权限
如果测试是否有C权限:
00100 & 01010 = 00000 无权限

如果测试是否有BD权限
01010 & 01010 = 01010 有B,D权限

我觉得也挺方便

论坛徽章:
0
2 [报告]
发表于 2004-11-06 00:00 |只看该作者

我还是认为用bit做权限更简单

PHP中程序怎样写?
应该如何储存权限数据?

论坛徽章:
0
3 [报告]
发表于 2004-11-06 10:18 |只看该作者

我还是认为用bit做权限更简单

能详细些么,我这里有20个模块每个模块对外提供1~7种权限,怎么用bit表示呢

论坛徽章:
0
4 [报告]
发表于 2004-11-06 13:31 |只看该作者

我还是认为用bit做权限更简单

我以前用位做过权限,

每位表示一个权限,

比如,第i位表示K权限,那判断是否有K权限,可以如下:

substr($pri,i-1,1)=="1" 有权限
substr($pri,i-1,1)!="1" 无权限

论坛徽章:
0
5 [报告]
发表于 2004-11-08 18:38 |只看该作者

我还是认为用bit做权限更简单

用 & ^ | 来运算就能判断了

论坛徽章:
0
6 [报告]
发表于 2004-11-08 18:41 |只看该作者

我还是认为用bit做权限更简单

有一个缺限就是这样只能表达 32种权限
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP