位置: 编程技术 - 正文

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

  • 所得税五个年度怎么算
  • 什么是税额和计税金额
  • 交通事故的支出是否可以个税税前扣除
  • 哪些费用可在缴纳医保
  • 企业异地迁移
  • 税控盘抵扣可以跨年吗
  • 以件数为印花税计税依据的有哪些
  • 小微企业应纳税所得额超过300万怎么办
  • 企业亏损结转年限举例说明
  • 一般纳税人条件要求
  • 发票勾选平台怎么导出未勾选的发票
  • 劳务派遣公司简介模板范文
  • 其他综合收益科目性质
  • 地下建筑房产税减免优惠政策
  • 丢失增值税发票最新处理办法
  • 结转损益类收入科目的余额其中主营业务收入
  • 出售旧房及建筑物计算土地增值税
  • 抹掉的零头怎么入账
  • 公司预付签证费怎么入账
  • 个人增值税业务有哪些?
  • 货运代理可以开9个点的发票吗?
  • 住宿费可以抵扣吗?
  • 投资收益如何做账
  • 税务局拍卖资产
  • 固定资产取得方式A04代号
  • 苹果的mac系统
  • 鸿蒙系统如何删除桌面图标
  • bios里面怎么设置中文
  • 监事会职权范围是什么
  • 无u刷bios一直闪
  • 劳务公司开发票,劳务公司怎么转取收入
  • 阻止电脑系统更新设置在哪
  • 库存现金盘亏处理前分录
  • 电风扇需要用完电再充吗
  • 又十个超级有用的PHP代码片段
  • thinkphp ide
  • php最好的编程语言
  • 长期借款资本成本高吗
  • 房地产开发企业土地增值税怎么计算
  • 融资租赁业务的特点
  • php 生成opcode
  • php生成csv文件
  • php获取get请求数据
  • echarts-gl
  • 有赞微小店认证麻烦
  • 什么企业符合高新技术企业
  • 车辆购置税能否融资租赁
  • 防火门是属于固定材料吗
  • 微信钱是不是现金
  • 外贸出口企业申报年月怎么填
  • 税务开票金额每个月有限制吗
  • 付款申请单如何生成凭证
  • 用于研发的材料如何入账
  • 退货与销售折让的区别
  • 已经做账发票退款怎么办
  • 参加会议正常应该交多少钱
  • ghost安装出错
  • WIN10系统CPU占用率高
  • os x10.11el capitan beta6更新了什么?os x10.11el capitan beta6发布下载
  • 开机密码怎么删除
  • linux恢复rm删除目录
  • 怎么关闭无服务状态
  • win8都有哪些版本
  • win10系统怎么设置开机启动项
  • 浅析科学发展观的核心立场
  • 创建nodejs项目的步骤
  • 基于javascript的毕业设计
  • jquery 上传进度
  • 批处理保存文件
  • 详细解读了
  • android:testonly="true"
  • python引用和调用有什么不同
  • js判断当前页面是否为空
  • Intent传List、Map
  • python 文件操作,读,写,指定位置
  • MVC+jQuery.Ajax异步实现增删改查和分页
  • javascript keyup
  • express后端
  • 地税登记证和税务登记证是一样的吗
  • 济南个税起征点是多少2021
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设