浅析PHP 按位与或 (^ 、&)


Posted in PHP onJune 21, 2013

今天朋友群里朋友问了下 按位与或的问题。。
PHP 工作有1年了 可能对这块不太熟悉吧 在这里给新手朋友介绍下这部分
按位于主要是对二进制数操作。

<?php
$a = 1;
$b = 2;
$c = $a^b;
echo $c  // 3
?>

这里不是单纯的相加关系 
   十进制 1换算成二进制  00000001
   十进制 2换算成二进制  00000010
   按位^                       00000011   // 就是不相同的都算成1 啦 ^_^
   然后,
<?php 
$a = 1; 
$b = 2; 
echo $a & $c;  // 1 
?>
   
十进制 3换算成二进制 00000011
十进制 1换算成二进制 00000001
按位& 00000001 // 就是各个位数相同的不变否则都算成0
最后介绍下用法 ; 按位&后返回值是没意义的。 主要是用来判断$a 是否存在于 $c // 权限用法比较多。
<?php
$my_privilege = 15;  // 1+2+4+8 拥有全部权限
$Pri = '';
$privilege_arr = array(8=>'增', 4=>'删',2=>'改',1=>'查');
foreach($privilege_arr as $k =>$v){
  $k & $my_privilege &&  $Pri .= '我有'.$v.'的权力<br>';
}
echo $Pri;
?>

PHP 相关文章推荐
PHP新手上路(五)
Oct 09 PHP
php面向对象全攻略 (三)特殊的引用“$this”的使用
Sep 30 PHP
PHP验证码类代码( 最新修改,完全定制化! )
Dec 02 PHP
Php中文件下载功能实现超详细流程分析
Jun 13 PHP
基于php设计模式中工厂模式详细介绍
May 15 PHP
PHP利用str_replace防注入的方法
Nov 10 PHP
ThinkPHP中的系统常量和预定义常量集合
Jul 01 PHP
PHP+jquery+ajax实现即时聊天功能实例
Dec 23 PHP
PHP封装的HttpClient类用法实例
Jun 17 PHP
mysql desc(DESCRIBE)命令实例讲解
Sep 24 PHP
PHP基于SPL实现的迭代器模式示例
Apr 22 PHP
PHP设计模式(五)适配器模式Adapter实例详解【结构型】
May 02 PHP
浅析PHP中Collection 类的设计
Jun 21 #PHP
解析PHP无限级分类方法及代码
Jun 21 #PHP
PHP 循环删除无限分类子节点的实现代码
Jun 21 #PHP
解析左右值无限分类的实现算法
Jun 20 #PHP
解析thinkphp的左右值无限分类
Jun 20 #PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
Jun 20 #PHP
PHP array_multisort() 函数的深入解析
Jun 20 #PHP
You might like
php数据库密码的找回的步骤
2011/01/12 PHP
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
PHP面向对象详解(三)
2015/12/07 PHP
php array_slice 取出数组中的一段序列实例
2016/11/04 PHP
PHP常用字符串函数用法实例总结
2020/06/04 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
JS面向对象编程浅析
2011/08/28 Javascript
JQuery each打印JS对象的方法
2013/11/13 Javascript
js禁止回车提交表单的示例代码
2013/12/23 Javascript
Javascript数组与字典用法分析
2014/12/13 Javascript
JavaScript将一个数组插入到另一个数组的方法
2015/03/19 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(放大缩小)
2016/12/02 Javascript
js判断手机系统是android还是ios
2017/03/07 Javascript
js实现一键复制功能
2017/03/16 Javascript
原生js中ajax访问的实例详解
2017/09/19 Javascript
vue Element-ui input 远程搜索与修改建议显示模版的示例代码
2017/10/19 Javascript
JSON是什么?有哪些优点?JSON和XML的区别?
2019/04/29 Javascript
前端插件之Bootstrap Dual Listbox使用教程
2019/07/23 Javascript
vue2.* element tabs tab-pane 动态加载组件操作
2020/07/19 Javascript
python字符串替换示例
2014/04/24 Python
Python中转换角度为弧度的radians()方法
2015/05/18 Python
Python实现根据IP地址和子网掩码算出网段的方法
2015/07/30 Python
Python3实现的字典、列表和json对象互转功能示例
2018/05/22 Python
使用Python的Django和layim实现即时通讯的方法
2018/05/25 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
2019/12/10 Python
详解python常用命令行选项与环境变量
2020/02/20 Python
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
html5中canvas学习笔记2-判断浏览器是否支持canvas
2013/01/06 HTML / CSS
证券期货行业个人的自我评价
2013/12/26 职场文书
军训教官感言
2014/03/02 职场文书
基层党建工作简报
2015/07/21 职场文书
nginx配置ssl实现https的方法示例
2021/03/31 Servers
python pyhs2 的安装操作
2021/04/07 Python
使用ORM新增数据在Mysql中的操作步骤
2021/07/26 MySQL
python运行脚本文件的三种方法实例
2022/06/25 Python