Я не знаю, получил ли я какое-либо повреждение мозга или зрения, но я не могу понять поведение этого кода:
$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
if
else
1
Вместо этого добавьте `else:
$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;