解释php if语句

时间:2010-08-31 16:51:57

标签: php

有人可以详细解释这些if语句的作用吗?

在第一个中,三个===标志是什么,单个&在第二个意思?

$aProfile = getProfileInfo($iId);
    if($aProfile === false)
        return false;

    if(!((int)$aProfile['Role'] & $iRole))
        return false;

2 个答案:

答案 0 :(得分:8)

===测试类型安全相等。

'3' == 3将返回true,但'3' === 3将不会,因为一个是字符串而一个是整数。同样,null == 0将返回true,但null === 0将不会返回; 10.00 == 10将返回true,但10.00 === 10将不会。

&是按位AND运算符。如果 both 从原始的两个位掩码中设置相应的位,它将返回一个位掩码,其中设置了一个位。

例如:

$x = 5;
$y = 17;
echo $x & $y;

导致1被回应。 $x...000101$y...010001。在中设置的唯一位是最右边的位,因此得到...000001,即1。

答案 1 :(得分:3)

这是PHP运营商的一个很好的指南:

http://www.tuxradar.com/practicalphp/3/12/3

有关&。

的信息,请参阅按位运算符部分