首页  >  文章  >  后端开发  >  PHP 按位与或 (^ 、&)

PHP 按位与或 (^ 、&)

WBOY
WBOY原创
2016-06-23 14:30:29959浏览

 

     今天朋友群里朋友问了下 按位与或的问题。。

     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;?>

 

 

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
上一篇:PHP获取checkbox值下一篇:PHP数组学习