位置: 编程技术 - 正文

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

  • 账面价值与计税基础一般会产生差异的是
  • 未按规定缴纳保险
  • 转出未交增值税是借方还是贷方
  • 手机里面的发票在哪里
  • 发票找不到了怎么报销
  • 金税盘锁死提示什么
  • 进项税额销项税额月末需要结转吗
  • 废旧物资增值税税收优惠政策
  • 旅行社给游客买保险的步骤是什么
  • 房地产开发企业会计科目
  • 合法有效的凭证
  • 应收账款税收风险有哪些
  • 土地使用权计入存货吗
  • 应交税费未交增值税借方余额表示什么
  • 银行内部转账会计分录
  • 快递费的进项税可以抵扣吗
  • 一般企业每个月的保洁费用是多少
  • 税种申报表样表
  • 资本公积与股东借款
  • 出口退税换汇率多少是正常
  • 个税如何绑定新公司
  • 法人股东分红如何申报所得税
  • 如何处理企业所得税纠纷
  • 怎么激活对话框取消
  • antd怎么用
  • 收到发票已入账,退回怎么做账
  • un system
  • gba是什么文件
  • php简单聊天室源码
  • 固定资产自行建造的会计处理
  • 发放员工奖励
  • php与前端交互
  • 编制合并报表的母子公司是什么主体
  • 企业应交税费科目
  • 库存现金要设置明细科目吗
  • 公司支付的工伤赔偿金可以税前扣除吗
  • 元宇宙产业链
  • 房产税为什么会退税
  • thinkphp删除文件
  • 库存股属于什么
  • watch监听不到props数据改变
  • 什么是男人无力的行为
  • 进项税额转出怎么做账务处理
  • 转回已核销的坏账分录
  • 财政拨入的科技费是什么
  • 应收账款收不回来
  • 股东退股怎么入账
  • 不含税开发票吗
  • 低值易耗品如何摊销
  • mysql存储过程传入参数
  • 无形资产的税费需要累计摊销吗
  • 出售金融资产计入
  • 企业预缴增值税附加税率
  • 信用减值损失是负数是什么意思
  • 商品损耗率一般是多少
  • 涉外收入申报单怎么填
  • 坏账准备的核算公式
  • 企业在建工程项目
  • 印花税申报流程视频
  • 自然人系统如何恢复数据
  • 供应商销售折让怎么入账
  • 242104 税控盘
  • mysql缩进快捷键
  • 复制糸统
  • windows2003服务不能开启
  • linux搭建socks代理
  • win8.1怎么关机快捷键
  • 怎么关闭xp系统弹窗
  • linux中nfs的搭建
  • 如何在linux安装软件
  • jquery删除节点的元素
  • vue router使用query和params传参的使用和区别
  • python视频下载
  • unity接收udp
  • arcgis engine+c#实例开发教程
  • javascript零基础
  • 广西电子发票如何申请
  • 非营利组织认定条件
  • 国税商品分类目录
  • 欠税多久法院立案
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设