可能重复:
Reference - What does this symbol mean in PHP?什么是与PHP中操作
我正在寻找一个密码生成器教程中,我发现一个,但有些事情让我很困惑...
if ($strength & 2) {
$vowels .= "AEIOU";
}
这个操作符究竟是什么?我知道& &等于“和”,但只有一个&?
可能重复:
Reference - What does this symbol mean in PHP?什么是与PHP中操作
我正在寻找一个密码生成器教程中,我发现一个,但有些事情让我很困惑...
if ($strength & 2) {
$vowels .= "AEIOU";
}
这个操作符究竟是什么?我知道& &等于“和”,但只有一个&?
与大多数编程语言一样,&
是位运算符。 x & 2
测试是否设置了x
的第二个(最低位)位(2
是10
二进制)。
是的,除了在VB.Net(如果我没记错的话还有更早的VB),在这种情况下,它是字符串连接运算符。 – Kibbee 2011-12-19 01:46:44
那么如何以这种方式测试$强度呢?导致其测试1,2,4和8 .. 1 2 4和8是什么意思? – 2011-12-19 01:48:03
你不知道这会导致一些家伙删除我的该死的问题的一半,导致其“可能”重复.. – 2011-12-19 01:49:35
这就是所谓的按位运算符。 Learn more.
这是bitwise and。
&
是bitwise AND operator。它设置两个数字中被测试的位。
例子:6 & 4
6 -> 1 1 0
4 -> 1 0 0
6 & 4 -> 1 0 0 -> 4
6 & 4 = 4
例子:13 & 10
13 -> 1 1 0 1
10 -> 1 0 1 0
13 & 9 -> 1 0 0 0 -> 8
13 & 9 = 8
当时真的讨厌我的问题的一半得到了清除。 – 2011-12-19 01:53:00