Допустим, что у нас есть функция returnNumberOrFalse(), которая возвращает значение, например — число, и мы хотим получить значение этой функции, записать его в переменную и вывести её в браузер, при условии, что функция не вернула false.
if($foo = returnNumberOrFalse() !== false){
echo $foo;
}
Этот код будет всегда выводить: 0 или 1 , т.к. сначала выполняется опрерация неравенства, а уже значение (результат) этой операции запишется в переменную $foo.
Чтобы этот код работал так, как боло описано в начале поста, надо использовать скобки.
if( ( $foo = returnNumberOrFalse() ) !== false){
echo $foo;
}
А вот ссылка на официальный мануал, раздел «Операторы» («Operators»)
полезная фича
Фича не только полезная, но и нужная, сейчас поправлю скрипт парсилки PR, а то сейчас даже если PR=NA выводится ноль. Автору спасибо.