У меня есть функция, которая в основном так:
//Init variable
$ready = FALSE;
//if submit
filter_input(INPUT_POST, "submit") ? $ready = TRUE : $ready = FALSE ;
//return the result
return $ready;
NetBeans предупреждает меня о нескольких назначениях. На других языках это вполне нормально. Это единственное предупреждение NetBeans, которое я получаю. Этот код можно использовать?
Вы можете упростить свой код до одного присваивания, чтобы вам даже не понадобился троичный оператор:
$ready = filter_input(INPUT_POST, "submit");
Подумай о троичном операторе ?:
как вызов функции:
$var = decideOnValue($condition, $valueIfConditionTrue, $valueIfConditionFalse);
и вы поймете, почему Netbeans генерирует эти предупреждения.
Распространенные обычаи ?:
оператором являются:
if/else
сооружатьДелать больше, чем это опасно, так как это может привести к ошибкам. Для вашего конкретного примера, если у вас есть опечатка, и вы по ошибке напишите $redy = FALSE
затем вы вводите небольшую ошибку, даже если код синтаксически корректен, и статический анализатор PHP, поставляемый с Netbeans, пытается этого избежать.
Вы можете переписать свой код так, чтобы он был немного меньше, и Netbeans не станет вас раздражать:
$ready = filter_input(INPUT_POST, "submit") ? TRUE : FALSE;
return $ready;
Незначительное неправильное использование синтаксиса. Пытаться:
$ready = filter_input(INPUT_POST, "submit") ? true : false;
На этом этапе $ ready должен быть либо true, либо false, поэтому нет необходимости предварительно инициализировать значение false.