Heim  >  Artikel  >  Backend-Entwicklung  >  PHP 按位与或 (^ 、&)

PHP 按位与或 (^ 、&)

WBOY
WBOYOriginal
2016-06-23 14:30:29959Durchsuche

 

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

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

 

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:PHP获取checkbox值Nächster Artikel:PHP数组学习