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

=====================================
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的次方
知道了这两点权限的处理就变得简单了吧,只要在每次执行涉及权限操作的时候把用户当前的权限总值和当前操作需要的权限做位与运算。如果结果为真执行,为假做报错处理就行啦(当然也不一定时报错,你可以自己设计没有权限时的程序)。
以上这篇PHP巧妙利用位运算实现网站权限管理的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# php
# 位运算
# 权限
# php实现简单的权限管理的示例代码
# PHP实现权限管理功能示例
# 给大家
# 报错
# 都是
# 你可以
# 又是
# 是一样的
# 就行
# 希望能
# 注意到
# 这篇
# 四种
# 小编
# 大家多多
# 这两点
# 知道了
# 只要在
相关文章:
如何高效配置IIS服务器搭建网站?
网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?
已有域名建站全流程解析:网站搭建步骤与建站工具选择
如何在IIS中配置站点IP、端口及主机头?
如何通过云梦建站系统实现SEO快速优化?
内部网站制作流程,如何建立公司内部网站?
如何通过FTP服务器快速搭建网站?
如何实现建站之星域名转发设置?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
如何在局域网内绑定自建网站域名?
个人网站制作流程图片大全,个人网站如何注销?
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
韩国服务器如何优化跨境访问实现高效连接?
广州营销型建站服务商推荐:技术优势与SEO优化解析
详解jQuery停止动画——stop()方法的使用
定制建站流程解析:需求评估与SEO优化功能开发指南
SQL查询语句优化的实用方法总结
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
外贸公司网站制作哪家好,maersk船公司官网?
如何快速搭建高效香港服务器网站?
制作网页的网站有哪些,电脑上怎么做网页?
建站之星在线客服如何快速接入解答?
电商平台网站制作流程,电商网站如何制作?
想学网站制作怎么学,建立一个网站要花费多少?
网站app免费制作软件,能免费看各大网站视频的手机app?
如何在阿里云购买域名并搭建网站?
小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
如何在IIS7上新建站点并设置安全权限?
专业公司网站制作公司,用什么语言做企业网站比较好?
可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?
如何确认建站备案号应放置的具体位置?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
建站上传速度慢?如何优化加速网站加载效率?
高性能网站服务器配置指南:安全稳定与高效建站核心方案
如何通过万网虚拟主机快速搭建网站?
c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】
公司网站的制作公司,企业网站制作基本流程有哪些?
如何通过二级域名建站提升品牌影响力?
建站168自助建站系统:快速模板定制与SEO优化指南
,网页ppt怎么弄成自己的ppt?
建站之星代理平台如何选择最佳方案?
再谈Python中的字符串与字符编码(推荐)
建站VPS配置与SEO优化指南:关键词排名提升策略
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
全景视频制作网站有哪些,全景图怎么做成网页?
自助网站制作软件,个人如何自助建网站?
C#如何使用XPathNavigator高效查询XML
*请认真填写需求信息,我们会在24小时内与您取得联系。