“与”运算符
AND运算符称为逻辑运算符。如果两个操作数都为真,则返回真。
例子:
False
解释:由于变量 $a = 100 和另一个变量 $b = 10,条件 $a == 100 的计算结果为真,$b == 10 的计算结果也为真。因此,’$a == 100 和 $b == 10′ 的计算结果为真,因为 AND 逻辑指出,如果两个操作数都为真,则结果也为真。但是当输入$b = 20时,条件$b == 10为假,所以AND运算结果为假。
‘&&’ 操作员
&&运算符称为逻辑运算符。如果两个操作数都为真,则返回真。
例子:
True
解释:由于变量 $a = 100 和另一个变量 $b = 10,条件 $a == 100 的计算结果为真,而 pow($b, 2) == $a 也计算为真,因为 $b = 10 提高到2 的幂是 100,等于 $a。因此, ‘$a == 100 && pow($b, 2) == $a’ 评估为真,因为 AND 逻辑指出,只有当两个操作数都为真时,AND 运算结果才为真。但是当输入$b = 20时,条件pow($b, 2) == $a为false,所以AND运算结果为false。
‘AND’ 和 ;&&’运算符之间的比较:下面列出了两个运算符之间的一些区别:
- 基于优先级:优先级基本上决定了在表达式中首先执行哪些操作。 ‘&&’运算符的优先级高,’AND’运算符的优先级低。
- 基于操作:
例子:输出:FALSE TRUE
解释:
只要操作数相同,两个运算符的结果就会不同。第一个表达式的计算结果为FALSE,而第二个表达式的计算结果为TRUE,即使两者都使用相同的操作。- 第一个表达式, $bool = TRUE && FALSE;计算结果为FALSE,因为首先执行 && 操作,然后将结果分配给变量 $bool 因为 &&运算符的优先级高于 = 的优先级。
- 第二个表达式, $bool = TRUE and FALSE;计算结果为TRUE,因为运算符“and”的优先级低于运算符“=”,因此将 = 右侧的值 TRUE 分配给 $bool,然后在内部执行“and”操作但未分配,因此$bool 现在为 TRUE。
所以解释一下,AND运算符和 &&运算符的根本区别在于它们的优先级不同,但两者都执行相同的操作。