Я создаю свою собственную функцию IsNullOrEmpty
, которая, как следует из названия, проверяет, является ли переменная: 'not set' или 'is null' или 'пусто'.
вот мой код :
function IsNullOrEmpty(&$input = ''){
if(!isset($input)){
return true;
}
else if($input == null){
return true;
}
else{
if(is_array($input)){
if(empty($input)){
return true;
}
else{
return false;
}
}
else if(is_string($input)){
if(strlen(trim($input)) <= 0){
return true;
}
else{
return false;
}
}
}
}
Вот несколько случаев, когда мы будем вызывать эту функцию:
$bool1 = IsNullOrEmpty($someEmptyString); // returns true
$bool2 = IsNullOrEmpty($someEmptyArray); // returns true
$bool3 = IsNullOrEmpty($some_undefined_variable); // returns true
$bool4 = IsNullOrEmpty($someClass->getStuff()); // I get message: Notice: Only variables should be passed by reference
Прием ссылок удобен, поскольку позволяет отправлять неопределенные переменные в эту функцию без ошибок, но не в случае, когда переменная не отправляется. Так есть ли способ, что эта функция может принимать reference
ИЛИ non-reference
параметры?
Надеюсь, что это имеет смысл, потому что я не могу найти ответ по результатам, которые служат Google или Stackoverflow.
Редактировать: Поскольку согласно @deceze нет ответа, что мне делать с этим вопросом, удалить его, спрятать?