gpt4 book ai didi

php - PHP 'and' 运算符的奇怪行为

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:07:51 26 4
gpt4 key购买 nike

我无法理解“和”PHP 运算符的行为。

代码如下:

$condition1 = true;
$var2 = "var2";
$var3 = "var3";

$condition2 = $condition1 and $var2 == $var3;

if($condition2)
echo '$condition1 and $var2 == $var3';

输出:$condition1 和 $var2 == $var3

现在很明显,因为 $var2 != $var3$condition2 应该是 false。因此,不应执行 echo 语句,但它会以其他方式发生。任何人都可以告诉我这段代码有什么问题吗?

最佳答案

使用&&代替

and 的优先级低于 &&。声明

$condition2 = $condition1 and $var2 == $var3;

从左到右分两步执行。

1: $condition2 = $condition1 被执行。即 $condition2 现在是 true

2: $var2 == $var3; 被执行,执行评估但不为任何变量分配任何值。

关于php - PHP 'and' 运算符的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38681484/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com