Я хочу объявить переменную в if
заявление и использовать его в том же заявлении. Это просто невозможно?
Пример проблемы (не фактический вариант использования, хотя …):
if ($test = array('test'=>5) && $test['test'] === 5) {
echo 'test';
} else {
echo 'nope';
}
Сообщение об ошибке:
ВНИМАНИЕ Неопределенная переменная: проверка в строке № 6
Потому что Приоритет оператора вам нужно сгруппировать назначение с ()
:
if ( ($test = array('test'=>5) ) && $test['test'] === 5) {
echo 'test';
} else {
echo 'nope';
}
Других решений пока нет …