some_function($input)
возвращает целое число 23
PHP, если заявления - логика
$other_int
имеет значение, которое не равно 23
Фрагмент кода 1
if ($int = some_function($input) && $int != $other_int) {...}
фрагмент кода 2
$int = some_function($input);
if ($int != $other_int) {...}
Я закодировал фрагмент 1 мышления что оператор if вернется с учетом приведенных выше условий. Я был неправ.
Утверждение if в фрагменте 2 истинно.
Почему?
Вы не можете поместить назначение внутри предложения if –
@ Дагон Да, вы можете. В этом весь вопрос. Почему этот код дает ожидаемый результат, когда присваивание находится за пределами предложения, а не внутри. –