这会评估什么?我知道它看起来很有趣,但我正在看练习考试,看到了这个:
if (number = 1) { echo "C1 is true"; }
无论何时分配变量,当分配的变量不引起true
时,它总是返回false
。因此它将转到if并回显输出。并且认为它主要取决于您分配的值。
假设你喜欢
if (number = 0) { // if(number = false)
echo "C1 is true";
} else {
echo "C1 is false";
}
它将打印C1 is false
.Bec它会间接表示喜欢
if(0) // if(false)
这是一个false
。
赋值运算符=
返回指定的值。这意味着什么?例如,+
中的1 + 2
运算符返回两个数字的总和;表达式1 + 2
的值是3
。同样,表达式number = 1
的值是1
。这就是为什么这样做的原因:
a = b = c = 1;
因此,您将1
分配给number
,其结果值为1
,由if
评估,等于true
。