Я написал очень простую функцию, думая, что это будет только на выходе его параметр, если он существует:Условно Выходные переменные с помощью пользовательских функций PHP
function hurl($var,$default="")
{
if(isset($var) && !is_null($var) && gettype($var) != "object" && gettype($var) != "array")
return $var;
return $default;
}
Таким образом, вы можете просто швырнуть ($ _ POST [ «переменная»]) и он не генерирует ошибку, если переменная POST не существует. Но я все еще получаю ошибку, как будто она пытается ссылаться на значение, которое не существует.
Затем я прочитал уведомление о isset() documentation:
Примечание: Поскольку это языковая конструкция, а не функция, она не может вызываться при помощи переменных функций.
Это связано меня Variable Functions, который гласил:
Переменные функции не будут работать с такими языковыми конструкциями, как эхо, печать, снята с охраны(), Исеть(), пустой(), включают в себя, требуют и тому подобное. Используйте wrapper functions, чтобы использовать любую из этих конструкций как переменные функции .
Как это сделать? Может ли кто-нибудь написать пример или более простой метод проверки без постоянной записи isset() и is_null() по всей странице? Будет ли попытка try catch работать в этом сценарии как-то?
Мысль этого решения тоже, но не знаю, если RecoJohnson требовалось решение для всех видов переменных. – djot