21

可能重复:
参考 - 这个符号在 PHP 中是什么意思?

当我阅读这个 php 页面时,我不确定 $var & 1 中的 & 在做什么。

function odd($var)
{
    // returns whether the input integer is odd
    return($var & 1);
}

它是否返回参考?我不确定。

如果你能解释它或给我一个 php 页面,我将不胜感激。

提前致谢。

4

3 回答 3

24

这是一个按位与运算。所有奇数都有 LSB(最低有效位设置为 1),偶数 - 0。

所以它只是将两个数字“与”在一起。例如 5。用二进制表示为 101。101 & 001 = 001 => true,所以很奇怪。

于 2012-11-13T09:38:03.730 回答
8

它正在执行按位与运算。那是位运算符

$a & $b 在 $a 和 $b 中设置的位被设置。


在这种情况return($var & 1);将根据. _0000....0001 _ _ _$var

如果数字的二进制表示以 0 结尾,则它是偶数(十进制)。

如果一个数字的二进制表示以 1 结尾,则它是奇数(十进制)。

于 2012-11-13T09:36:04.680 回答
4

&按位和运算符1在这种情况下,如果$var是奇数,0如果是偶数,它将返回$var

于 2012-11-13T09:36:34.657 回答