高手请指教
如"011111110"红色这段,但这些位数是可以扩充的,即红色这段可以加位,现在是以功能来代表这些位,比如"入账",它将对应于第7位,"审核",它将对应于第6位,以此类...
如"011111110"红色这段,但这些位数是可以扩充的,即红色这段可以加位,现在是以功能来代表这些位,比如"入账",它将对应于第7位,"审核",它将对应于第6位,以此类推,高手请指教
展开
1个回答
展开全部
这是个跟权限设置相关的东东
通过计算 中间的 11111 五个1 ,而且是可以加位的,那么我们这么算他的结果,当做二进制
11111 = 1*16+1*8+1*4+1*2+1*1 = 31
10000 = 1*16 = 16
10001 = 17
10010 = 18
....
这样的话,每个 功能取向都对应一个特定值,在用户表中我存放这个结果。
当用户登录时,我取出这个结果,比如 17,然后解码就是10001 ,我们可以根据每一位来确定他具有哪些功能。
再来解决下一个问题,中间位是可以加位的,你的意思应该是 不仅仅有五位,中间可能会有六位七位。
这也好解释,如果这个五位不够了,那么我们就需要用六位,比如我现在有六个功能,那么就需要6个1,比如,现在的排列是 100011 ,
那么计算 100011 = 32+2+1 = 35 ,我们存放35到用户表中,而这一操作会影响前面的不足6位的用户吗?答案是肯定不会的。
因为 即使是六位,31 =011111 = 11111 ,所以这是种比较好的权限设计方式。
通过计算 中间的 11111 五个1 ,而且是可以加位的,那么我们这么算他的结果,当做二进制
11111 = 1*16+1*8+1*4+1*2+1*1 = 31
10000 = 1*16 = 16
10001 = 17
10010 = 18
....
这样的话,每个 功能取向都对应一个特定值,在用户表中我存放这个结果。
当用户登录时,我取出这个结果,比如 17,然后解码就是10001 ,我们可以根据每一位来确定他具有哪些功能。
再来解决下一个问题,中间位是可以加位的,你的意思应该是 不仅仅有五位,中间可能会有六位七位。
这也好解释,如果这个五位不够了,那么我们就需要用六位,比如我现在有六个功能,那么就需要6个1,比如,现在的排列是 100011 ,
那么计算 100011 = 32+2+1 = 35 ,我们存放35到用户表中,而这一操作会影响前面的不足6位的用户吗?答案是肯定不会的。
因为 即使是六位,31 =011111 = 11111 ,所以这是种比较好的权限设计方式。
屹保实业
2024-12-05 广告
2024-12-05 广告
即时贴也叫自粘标签材料,是以纸张、薄膜或特种材料为面料,背面涂有胶粘剂,以涂硅保护纸为底纸的一种复合材料。上海屹保实业有限公司专业销售、批发,山本即时贴,山本灯布,山本反光膜,山本广告材料,山本贴膜,山本车身贴,山本磨砂贴;质量保证、价格实...
点击进入详情页
本回答由屹保实业提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询