PHP имеет различные функции, которые можно использовать для проверки значения переменной.Для этого есть три полезные функции: isset (), empty () и is_null ().Все эти функции возвращают логическое значение.Если эти функции используются неправильно, они могут привести к неожиданным результатам.
isset () и empty () часто рассматриваются как противоположные функции, однако это не всегда так.В этом посте я объясню различия между этими функциями.
isset ()
Из руководства по PHP - isset ():
isset — Determine if a variable is set and is not NULL
Другими словами, он возвращает true только тогда, когда переменная не равна нулю.empty ()
Из руководства по PHP - empty ():
empty — Determine whether a variable is empty
Другими словами, он вернет true, если переменная является пустой строкой, false,array (), NULL, «0?», 0 и неустановленная переменная.is_null ()
Из руководства по PHP - is_null ():
is_null — Finds whether a variable is NULL
Другими словами, он возвращает true только тогда, когда переменная равна нулю.is_null () противоположна isset (), за исключением одного различия, что isset () может применяться к неизвестным переменным, но is_null () только к объявленным переменным.
Таблица на рисунке представляет собой простую ссылку на то, что эти функции будут возвращать для различных значений.Пробелы означают, что функция возвращает bool (false).
Также я сделал пользовательскую функцию для проверки всего материала.
function checkEmpty($var, $term = ""){
if(isset($var) && trim($var) != "" && (!empty($var) || trim($var) == 0)){
return true;
}
else{
if($term != ""){
return array("status" => "error", "desc" => "$term can not be empty");
}
else{
return array("status" => "error", "desc" => "value can not be empty");
}
}
}