Home  >  Article  >  Backend Development  >  PHP 按位与或 (^ 、&)

PHP 按位与或 (^ 、&)

WBOY
WBOYOriginal
2016-06-23 14:30:29956browse

 

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

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

 

 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:PHP获取checkbox值Next article:PHP数组学习