实际上,这可能一点也不奇怪,但对我来说(来自java),这当然是,这是我正在使用的代码。
echo "</br>Category: " . $category . " -- Image: " . $image;
if(($category != 1) && ($image == 1)) {
echo "</br>Problem.";
}
假设这已经被削减,那么以下输出是这样的:
Category: 6 -- Image: 4
Problem.
我不确定这是什么原因,考虑到使用了"&&"而不是"||"运算符,我几乎肯定这是正确的。也许PHP在比较整数时有不同的条件?这和说一样吗
if category is 6 AND image is present
像
if(image)
调用会在JavaScript中吗?
我在这里不知所措。
再现代码如下:
<?php
if($_SERVER['REMOTE_ADDR'] != "xx.xx.xxx.xxx") { // Developer mode
die('<h1>Oops, something went wrong, please wait while we fix it!</h1>');
}
$category = 6;
$image = 4;
echo "</br>Category: " . $category . " -- Image: " . $image;
if(($category != 1) && ($image == 1)) {
echo "</br>Problem.";
}
?>
我无法复制错误,我只得到:
Category: 6 -- Image: 4
由于(6!=1 AND 4==1)
是FALSE
您的代码应该还可以。但只需使用以下代码即可。
$category = (int)6;
$image = (int)4;
echo "</br>Category: " . $category . " -- Image: " . $image;
if(($category !== 1) && ($image === 1)) {
echo "</br>Problem.";
}
更多比较运算符