700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 详细介绍PHP巧妙利用位运算实现网站权限管理办法

详细介绍PHP巧妙利用位运算实现网站权限管理办法

时间:2021-03-27 16:59:17

相关推荐

详细介绍PHP巧妙利用位运算实现网站权限管理办法

后端开发|php教程

php,位运算,网站权限

后端开发-php教程

下面小编就为大家带来一篇PHP巧妙利用位运算实现网站权限管理的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

毕业设计 管理系统 源码,vscode复制代码收,查看 ubuntu 命令,tomcat 调用so,MFC封装sqlite3,可视化大屏前端框架 开源,爬虫怎么查注册的社交软件,php js 乱码,seo运营优化服务,网站访问的整个流程包括,网页源码打开搜索,flash电子相册模板lzw

首先我们先定义4个常量来设定四种权限:

租房手机源码,ubuntu时间怎么设置,tomcat页面访问速度慢,东软爬虫,php中容易出错的案例,seo软文发表lzw

=====================================

baocms7.0源码,ubuntu安装删除文件,服务器tomcat启动,爬虫的经验,php颜色加黑边,南通seo 带你认识seolzw

define(ADD,1);//增加数据库记录的权限

define(UPD,2);//修改数据库记录的权限

define(SEL,4);//查找数据库记录的权限

define(DEL,8);//删除数据库记录的权限

=====================================

接下来假设有3个用户:

A用户拥有ADD-UPD-SEL-DEL四个权限,用位或运算计算A的权限总值

$a_all=ADD|UPD|SEL|DEL;//$all=15 可以注意到这个值和加法的结果是一样的

B用户拥有ADD-UPD-SEL三个权限,用位或运算计算B的权限总值

$b_all=ADD|UPD|SEL;//$all=7 这个值和加法的结果又是一样的

C用户拥有ADD-UPD两个权限,用位或运算计算C的权限总值

$c_all=ADD|UPD;//$all=3 这个值和加法的结果还是一样的

=====================================

接下来我们用位与做运算

$a_all&ADD 结果为真

$a_all&UPD 结果为真

$a_all&SEL 结果为真

$a_all&DEL 结果为真

=====================================

$b_all&ADD 结果为真

$b_all&UPD 结果为真

$b_all&SEL 结果为真

$b_all&DEL 结果为假

=====================================

$c_all&ADD 结果为真

$c_all&UPD 结果为真

$c_all&SEL 结果为假

$c_all&DEL 结果为假

=====================================

发现奥秘没有?

1、当权限总值和没有的那个权限做位与运算,结果为假

2、权限的值都是2的次方

知道了这两点权限的处理就变得简单了吧,只要在每次执行涉及权限操作的时候把用户当前的权限总值和当前操作需要的权限做位与运算。如果结果为真执行,为假做报错处理就行啦(当然也不一定时报错,你可以自己设计没有权限时的程序)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。