位置: 编程技术 - 正文

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获取操作系统)

  • 医疗机构销售药品需要销售记录吗
  • 增值税纳税义务发生时间的规定
  • 本期免税额怎么填写
  • 建筑业差额纳税怎么算
  • 5000以下固定资产怎么做账
  • 个体户没有办税务登记,产生的房土两税
  • 支付招聘费收到专票怎么记账
  • 直线法计提折旧的公式预计净残值
  • 净利润提盈余公积
  • 建筑企业如何管理资质证书
  • 营改增后补缴营业税
  • 年薪制有什么好处
  • 企业境外收入税率
  • 住宿费可以抵扣吗?
  • 企业拆迁补偿款需要开发票吗
  • 机动车强制保险新政策
  • 上海个人住房房产税
  • 收据做账税局认嘛
  • 自然人代人开普票合法吗
  • 劳务派遣公司怎么赚钱
  • 收到镇级财政扶持怎么办
  • 报销单据粘贴单图片
  • 企业分红给企业股东怎么交税
  • 货币性项目和非货币性项目的区别是什么?如何进行处理?
  • 未确认融资费用属于企业资产类科目对不对
  • dell笔记本如何恢复系统
  • 中介公司收取中介费过高违法吗
  • 升级鸿蒙系统会解除限制充电60
  • 滴滴司机工资怎么算的
  • 季度成本分析报告
  • 前端解决方案
  • dreamweaver 是什么
  • PHP:curl_multi_init()的用法_cURL函数
  • phpstorm 断点
  • php_fileinfo作用
  • php foo
  • 小型企业的资产负债表
  • broken pipe write failed
  • 出口货物退免税证明办税进度
  • php缓存机制有哪些
  • 古罗马广场意大利
  • 竣工结算与竣工决算的主要区别是什么
  • 长期借款的
  • 资产处置损益要写明细账吗
  • opencv识别车牌
  • 达摩院 2021
  • 如何让header居中
  • 应收账款期末余额在借方还是贷方
  • 小企业会计准则季度报表
  • 处置子公司利润表
  • 以房抵债的税会退税吗
  • 库存商品毁损的会计分录
  • 应收账款在贷方为负数表示什么
  • 资本化支出计入什么科目
  • 收到预付卡结算款怎么入账
  • 增值税发票丢失可以补开吗
  • 收不回来的账怎么处理
  • 粗纤维测定仪价格
  • rtm平台全称
  • microsoft window vista
  • win7升级win10之后视频解码能力变弱
  • linux oracle 01034
  • txt文件打开
  • win10粘滞键怎么解除
  • linux内核文件夹
  • android开发流程
  • node.js中module.exports与exports用法上的区别
  • jquery 设置css
  • 如何提取api
  • js复制数组的方法
  • jq cookie
  • 源码分析工具
  • unity3d mod
  • python:\n
  • 开票软件如何升级系统
  • 省委巡视组收到的案件线索怎么分配
  • 四川税务局网上办事大厅
  • 地税和国税是什么关系
  • 怎么看扣税明细
  • 税收优惠政策有哪些企业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设