位置: 编程技术 - 正文

PHP巧妙利用位运算实现网站权限管理的方法(php 位运算符)

编辑:rootadmin

推荐整理分享PHP巧妙利用位运算实现网站权限管理的方法(php 位运算符),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php怎么运用,php 位移,php 位移,php位移运算,php位运算符的应用,php位移运算,php位运算,php按位与,内容如对您有帮助,希望把文章链接给更多的朋友!

首先我们先定义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= 可以注意到这个值和加法的结果是一样的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 结果为真

PHP巧妙利用位运算实现网站权限管理的方法(php 位运算符)

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

$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获取linux命令结果的实例 如果使用php命令行里想获取etho网卡的IP怎么处理呢?publicfunctionget_server_ip(){if(PHP_SAPI==='cli'){$buffer="";$handle=popen("ifconfigeth0|grep'inetaddr'|awk-F'[:]''{print$}'",'r

Thinkphp结合ajaxFileUpload实现异步图片传输示例 前言在做这个项目之前,对图片上传处理一直都是直接用表单提交的方式进行文件传输,这次因为需求,需要实现对图片进行异步传输,虽然实现并不

标签: php 位运算符

本文链接地址:https://www.jiuchutong.com/biancheng/293432.html 转载请保留说明!

上一篇:golang、python、php、c++、c、java、Nodejs性能对比

下一篇:php获取linux命令结果的实例(php获取操作系统)

  • 进项税抵扣怎么弄
  • 增值税发票综合服务平台验证口令失败
  • 购买财务软件做什么科目
  • 发票上盖了老税号怎么办
  • 回单结算卡丢失了严重吗
  • 出纳取备用金需要交税吗
  • 人员新增申报表
  • 跨月的增值税普通发票开错了怎么办
  • 软件使用费的税率是多少啊
  • 存货入账价值计算公式
  • 债务清偿抵充的案例
  • 亏损企业研发费加计扣除可以递延吗
  • 所得税汇算交的所得税怎么做账
  • 筹建期间取得的专用发票怎么入账
  • 银行余额调节表模板
  • 企业无法收回的账款
  • 发票上的税额和报税的数不一样,按照哪个报
  • 预收账款缴纳企税怎么算
  • 汽油税种
  • 车辆增值税抵扣多少点
  • 理论增值额的含义
  • 安装固定资产领用原材料
  • 开票税率选错申报增值税时怎么处理
  • 吸收合并后被合并的公司
  • 企业的免税收入用于支出所形成的费用或财产
  • 对公账户网银证书有效期多久
  • 物业公司收的电梯费如何做账
  • 无票收入确认收入
  • 固定资产移交给别的单位怎么做账
  • 开具发票必须附列清单吗
  • 公司购买床垫怎样入账
  • 外籍人士可以回国吗
  • 一般纳税人出租不动产
  • 项目工程会计账务处理
  • win7缓存设置方法
  • iis防盗链
  • 建造合同完工百分比法
  • php的api接口
  • 公司注销后进项税可以转移吗
  • 自行建造厂房如何缴税
  • mysql redo log buffer
  • 印花税是根据什么申报的
  • api接口安全措施
  • mongodb win7
  • 分公司负责人如何开展工作的
  • 什么发票可以抵扣增值税吗
  • 离职员工个税申诉企业怎么处理
  • 其他综合收益的来源
  • 工会经费在哪儿申报
  • 赞助支出为什么纳税调整
  • 预付款开了发票
  • 劳动关系与劳务关系的联系与区别
  • 机器折旧科目
  • 为什么记账能省钱
  • 如何取消已经生产的产品
  • 应收的借方和应付的贷方相等
  • 汇算清缴工资调减怎么做账
  • 工会筹备金记什么科目
  • 出口免抵退和免退有什么区别
  • 生产经营所得成本费用怎么算
  • 福利设施的定义
  • 小微企业建账
  • 社会医疗保险机构名词解释汇总
  • 账簿按形式分几种
  • mac os x10.6
  • 电脑怎么装双系统win10和linux
  • 怎么调整桌面图标间距
  • windows 7磁盘
  • linux系统了解
  • backtracker
  • eclipse win7
  • ajax 编码
  • js判断div是否有滚动条
  • Android HandlerThread 实例
  • shell中数组如何定义
  • linuxtop命令详解
  • android电池优化设置
  • js保存设置
  • 广东省国家税务总局稽查局局长
  • 延安市地方税务局电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设