Проверка переменных в PHP

2 минуты на чтение

Проверка переменных позволяет избежать множества ошибок при выполнении кода и сберечь нервы. Очень часто для проверки переменной ее подставляют в качестве выражения условного оператора, что не является полноценной проверкой и не обезопасит от появления ошибок.

Переменные в PHP

Переменная PHP может находиться в одном из следующих состояний:

  1. не определена,
  2. определена, но не имеет значения (пустая),
  3. определена и имеет значение.

$var

Если в качестве условия использовать саму переменную, условие выполнится только если переменная определена и имеет значение, отличное от нулевого (не 0,не пустая строка, не пустой массив)

is_null()

Данная функция вернет true, если переменная не определена (или была удалена с помощью unset()), или переменной присвоена константа NULL. В остальных случаях функция вернет false.

isset()

Данная функция является противоположностью is_null(), определяет была ли установлена переменная со значением не равным NULL.

Вернет false для неопределенной переменной и переменной с установленным значением NULL.

empty()

Функция проверяет переменные на пустоту. Пустыми считаются неопределенные переменные, переменные с установленным значением NULL, с числовым значение 0, строки содержащие символ 0, а также пустые строки и незаполненные массивы.

Функция по сути проверяет следующее выражение:

empty($var) === (!isset($var) || $var==false)

Итоги

Ниже для удобства сравнения приведена сравнительная таблица:

 $varis_null($var)isset($var)empty($var)
неопределенная переменнаяfalsetruefalsetrue
NULLfalsetruefalsetrue
0falsefalsetruetrue
"0" - строка со значением 0falsefalsetruetrue
'' - пустая строкаfalsefalsetruetrue
' ' - строка из пробелаtruefalsetruefalse
array() - пустой массивfalsefalsetruetrue
FALSEfalsefalsetruetrue
123truefalsetruefalse
"непустая строка"truefalsetruefalse
array("1","Второй", 3)truefalsetruefalse
TRUEtruefalsetruefalse

 

Facebook Vk Ok Twitter Telegram

Похожие записи:

В Javascript (ES6) появились новые способы объявления переменных, помимо var: через let и const. Рассмотрим разницу между данными операторами, особенности и область их применения. Содержание var let const var На сегодняшний день var – это рабочий, но уже уст...
Начиная с версии 5.3 в состав Laravel входит Vue. Данный JS фреймворк в последнее время набирает популярность, отчасти благодаря тому что он входит в состав популярного PHP фреймворка Laravel, также данный JS фреймворк активно развивается и является мощным и р...
Прекращение выполнения текущего скрипта часто требующийся функционал. Причинами для прекращения могут быть отсутствие необходимых для выполнения входных параметров, отсутствие прав у текущего пользователя, и прочие условия, невыполнение которых может повлиять ...