我想使用 true/false 结果在 PHP 中做其他事情。我对以下内容感到惊讶:
$falsevar = false;
$truevar = true;
echo "falsevar which I just set to false is".$falsevar; //displays true
echo "truevar which I just set to true is".$truevar; //displays 1
输出:
falsevar which I just set to false istruevar which I just set to true is1
我应该如何看待这个结果? 为什么 PHP 会将 false 回显为 true?
让我更加困惑的是,我的用例如下:
$prompt = "I would like a sandwich to eat";
$myarray = array("pizza", "hamburger", "hot dog");
$wantsItem = false;
foreach ($myarray as $needle) {
if (strpos($prompt, $needle) != false) {
echo "Match found: {$needle}\n";
$wantsItem = true;
}
}
echo "wants item is".$wantsItem;
当我运行这个我认为应该返回 false 的命令时,根本没有任何回声。
falsevar which I just set to false istruevar which I just set to true is1value of wants item
有人可以向我解释一下 PHP 中 true 和 false 的行为吗? (请注意,我理解 true 和 false 不区分大小写,因此这不应该成为问题。)
感谢您的任何建议。
使用 !== false 因为 0 等于 false