欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 按位与主要是对二进制数操作。 代码如下: [php] ?php $a = 1; $b = 2; $c = $a^b; echo $c // 3 ? 这里不是单纯的相加关系 十进制 1换算成二进制 00000001 十进制 2换算成二进制 00000010 按位^ 000
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
按位与主要是对二进制数操作。
代码如下:
[php]
$a = 1;
$b = 2;
$c = $a^b;
echo $c // 3
?>
这里不是单纯的相加关系
十进制 1换算成二进制 00000001
十进制 2换算成二进制 00000010
按位^ 00000011 // 就是不相同的都算成1 啦 ^_^
然后,
[html]
$a = 1;
$b = 2;
echo $a & $c; // 1
?>
十进制 3换算成二进制 00000011
十进制 1换算成二进制 00000001
按位& 00000001 // 就是各个位数相同的不变否则都算成0
最后介绍下用法 ; 按位&后返回值是没意义的。 主要是用来判断$a 是否存在于 $c // 权限用法比较多。
[html]
$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.'的权力
';
}
echo $Pri;
?>