gpt4 book ai didi

php - 为什么我需要转换这个 bool 表达式?

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

在 PHP 7 中,以下代码片段奇怪地打印出 true:

$b = true and false;
var_dump($b);

但是,如果我转换它,它会正确打印 false:

$b = (bool)(true and false);
var_dump($b);

导致这种情况发生的现象是什么?

最佳答案

不是 Actor 在做这件事,而是括号。 and 的优先级低于 =,因此您的第一个语句被视为

($b = true) and false;

你需要写:

$b = (true and false);

$b = true && false;

&&and 是等价的,只是它们的优先级不同(同样适用于 ||or) .

关于php - 为什么我需要转换这个 bool 表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40540063/

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