文档章节

使用二进制位进行权限控制

T
 TimWong
发布于 2015/12/11 15:13
字数 180
阅读 29
收藏 0
<?php
//定义动作的位,实际使用可以放在数据库,使用时再移一下位
define('ACT_QUERY',  1 << 0);  //1
define('ACT_ADD',    1 << 1);  //2
define('ACT_MODIF',  1 << 2);  //4
define('ACT_DEL',    1 << 3);  //8

//检查是否有某一动作的权限,$act是要判断的动作,$my是用户的权限
function check($act,$my){
    return ($act & $my) ? 'Yes' : 'No';  
}

//用户权限,与操作,实际使用时,一般从数据库读取
$my = ACT_QUERY | ACT_ADD | ACT_DEL; 

printf("ACT_QUERY:%s\n",    check(ACT_QUERY,$my));  //Yes
printf("ACT_ADD:%s\n",      check(ACT_ADD,$my));    //Yes
printf("ACT_MODIFY:%s\n",   check(ACT_MODIFY,$my)); //No
printf("ACT_DEL:%s\n",      check(ACT_DEL,$my));    //Yes
?>

© 著作权归作者所有

T

TimWong

粉丝 19
博文 21
码字总数 17318
作品 4
广州
私信 提问
位运算在vue权限路由中的应用

RBAC0(基于角色的访问控制) Role-Based Access Control:使用角色描述用户和权限(operation+resource)之间的关系,用户和权限之间无需直接关联 RBAC 基本模型如图所示(图片来自有赞权限系...

superchris
07/15
0
0
基于二进制位的权限控制(数据库里的二进制)

declare @a BINARY(2) set @a = 32768 select @a BINARY 字节 1B = 8位 bit BINARY(2) = 16 位二进制数 换算16进制位4位 2进制数 最大值为524287 转换16进制OxFFFF (111111111111111) 最高位......

mickelfeng
2016/08/22
110
0
【小知识大道理】被忽视的位运算

Bitwise Operation导语 众所周知计算机是基于二进制01进行运算的,理所当然地,位运算相对于各种算术运算更加贴合计算机的二进制语义,运算效率会更快。这样计算机是舒服了,人类读起来就太生...

曲高和寡_健
2017/11/21
0
0
详解“FTP文件传输服务”安装配置实例

“FTP文件传输服务”安装配置实例 家住海边喜欢浪:zhang789.blog.51cto.com 目录 简介 ftp工作原理 常见的FTP服务 Vsftpd服务器的安装 Vsftpd.conf配置文件详解 配置FTP服务器实例 分析vsf...

好笔记运维
2018/06/26
0
0
深入理解Linux中的文件权限

Linux中文件权限 Linux中每个文件都有一个特定的拥有者(一般是创建它的用户)和所属用户组,这是它的固有属性。文件可以利用这两个固有属性来规定它的拥有者或者是所属用户组内的用户是否拥...

常青藤sin60
2017/04/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

规则引擎

解决问题 版本迭代速度更不上业务变化,但是若多个业务同时变化,除了为每个业务设计专属配置项也不利于操作。就想服务接口单纯化,将复杂多变的业务逻辑交给规则引擎,让用户在web端或cs端自...

无极之岚
21分钟前
3
0
OSChina 周三乱弹 —— 欢迎你来做产品经理

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @巴拉迪维 :10多次劲歌金曲获奖,更多叱咤歌坛排名,黎明才应该是四大天王之首,只可惜拍的电影太少。单曲循环一个多月的歌,力荐 《无名份的...

小小编辑
59分钟前
187
9
500行代码,教你用python写个微信飞机大战

这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手。 帮助蹲厕族、YP族、饭圈女孩在无聊之余可以有一样东西让他们振作起来!...

上海小胖
今天
9
0
关于AsyncTask的onPostExcute方法是否会在Activity重建过程中调用的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XG1057415595/article/details/86774575 假设下面一种情况...

shzwork
今天
7
0
object 类中有哪些方法?

getClass(): 获取运行时类的对象 equals():判断其他对象是否与此对象相等 hashcode():返回该对象的哈希码值 toString():返回该对象的字符串表示 clone(): 创建并返此对象的一个副本 wait...

happywe
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部