Мой код:
function Check($Variable, $DefaultValue) { if(isset($Variable) && $Variable != "" && $Variable != NULL) { return $Variable; } else { return $DefaultValue; } } $a = Check(@$foo, false); $b = Check(@$bar, "Hello"); //$a now equals false because $foo was not set. //$b now equals "Hello" because $bar was not set.
isset()
под капотом при тестировании переменной? РЕДАКТИРОВАТЬ:
Значение по умолчанию должно быть определено пользователем. Иногда это будет число, иногда строка.