[英]What is $a & $b and $a | $b in php?
$ a&$ b和$ a发生了什么? $ b在php中?
$a = 11;
$b = 7;
echo $a & $b;
在上面的php代码中,它将给出结果3如何计算3?
$a = 11;
$b = 7;
echo $a | $b;
在上面的php代码中,它将给出结果15如何计算15?
向我解释这两个条件在PHP?
这里发生的事情叫做位运算符 。 它更常用于低得多的语言中,并且它是计算机可以执行的最简单的操作之一。 大多数计算都基于此。 那是什么 好, &
是Bitwise AND
运算符,而|
是Bitwise OR
运算符。 您可以使用此在线工具进行测试。 但是,让我们细分一下它是如何工作的。
取两个二进制字符串,并将不在两个二进制文件中的任何1
(在同一位置)变成0
。
7
是111
11
是1011
因此,如果对它们执行“ AND
”运算,则会得到类似这样的信息
0111 &
1011 =
0011
十进制的0011
是3
。 您得到0011
因为只有最后两个地方都是1
。
OR
基本上是相反的。 如果任一二进制中的位置为1
,则输出为1
。 因此,当您在7
和11
上执行该操作时,
1011 |
0111 =
1111
1111
是十进制的15
二进制, 11
是00001011
和7
是00000111
(仅示出为简单起见相关8位)。
因此11 & 7
(按位与)
00001011
00000111 & matching only where both matching bits are `1`
--------
00000011
这是3
的二进制
所以11 | 7
11 | 7
(按位或)
00001011
00000111 | matching where either (or both) bits is `1`
--------
00001111
这是15
的二进制
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.