0
我不知道有沒有受到一些腦或視力損害,但我無法理解這段代碼的行爲:PHP乘法怪異的行爲
$po=1;
$po2=0;
echo $po.'*'.$po2.'=';
if($po*$po2) $po=1;
echo $po;
我期望輸出爲1 * 0 = 0,但實際上它是1 * 0 = 1。
我不知道有沒有受到一些腦或視力損害,但我無法理解這段代碼的行爲:PHP乘法怪異的行爲
$po=1;
$po2=0;
echo $po.'*'.$po2.'=';
if($po*$po2) $po=1;
echo $po;
我期望輸出爲1 * 0 = 0,但實際上它是1 * 0 = 1。
$po
始終爲1.您將其初始化爲1,稍後在if
的情況下,您沒有else
。所以它仍然是1
。
相反,添加一個`其他:
$po = 1;
$po2 = 0;
echo $po.'*'.$po2.'=';
if ($po * $po2) {
// Unnecessary - it's already 1
$po = 1;
}
// Set it to 0...
else {
$po = 0;
}
echo $po;
哦,非常感謝,哈哈 – user965748