Как проверить переменную на пустоту
Проверка на пустоту php, как проверять переменные на пустоту в php, с примерами. Все способы проверить на пустоту переменную. На самом деле - понять, что вернет тот или иной пример проверки на пустоту и сразу станет понятно, что будет работать корректно в случае определения существования или отсутствия переменной и пустота тоже сюда входит...
Все способы проверить на пустоту переменной
- О всех способах проверки на пустоту
- Проверим переменную если она ничему не равна
- Проверка на пустоту переменной если она равна пробелу
- Проверить на пустоту, если переменная не существуют
- Проверим на пустоту переменную, если она существует!
Выводы.
О всех способах проверки на пустоту
С самого начала дадим переменные, которые будем проверять всеми возможными способами на пустоту!
У нас будет несколько переменных, которые будут иметь разное значение ив том числе будут пустыми, не существовать, либо иметь внутри пробел...
Переменные для проверки на пустоту в php
Если $primer ="";
Если $primer =" ";
Если - $primer не существует.
Если $primer ="Здесь есть текст";
Перечислим все проверки, которые будут проходить переменные на пустоту в том числе :
Первым -> мы получим var_dump переменной, тип и значение - это самый надежный способ узнать, что же внутри переменной!
isset : определяет, установлена ли переменная
if(isset($primer)){$isset_primer = 'переменная существует';}
else{$isset_primer = 'переменная не существует';}
echo $isset_primer;
empty -> Проверяет, пуста ли переменная
if(empty ($primer)){$empty_primer = 'переменная пустая';}
else{$empty_primer = 'переменная не пустая';}
echo $empty_primer ;
if($primer)-> если переменная, часто употребляемая проверка
if($primer){$is_primer= 'переменная не пустая';}
else{$is_primer= 'переменная пустая';}
echo $is_primer;
if(trim($primer))-> тоже самое, что и предыдущий пункт, только добавим "trim"
if(trim($primer)){$trim_primer= 'переменная не пустая';}
else{$trim_primer= 'переменная пустая';}
echo $trim_primer;
if($primer == false)-> если переменная равна false по значению
echo $false_primer;
if($primer === false)-> если переменная равна false по значению и по типу
echo $false_primer;
if($primer == true)-> если переменная равна true по значению
echo $true_primer;
if($primer === true)-> если переменная равна true по значению и по типу
echo $true_primer2 ;
Проверим переменную если она ничему не равна
В первом пункте, проверим на пустоту, разложим все по пунктам и сделаем вывод, что это значит. Для остальных путов, приведем только результат!
Первая по списку, это переменная, которую можно назвать пустой. Которая равна "ничему".
Результаты проверок, на пустоту, если в переменной ничего нет
var_dump($primer);
-> string(0) ""if(isset($primer))
-> переменная существуетif(empty ($primer))
-> переменная пустаяif($primer)
-> переменная пустаяif(trim($primer))
-> переменная пустаяif($primer == false)
-> переменная пустаяif($primer === false)
-> переменная не пустаяif($primer == true)
-> переменная пустаяif($primer === true)
-> переменная пустаяПроверка на пустоту переменной если она равна пробелу
Если вас спросить пробел в переменной это пустота или нет!? Если смотреть со стороны, кто не имеет понятия о программировании, то скорее всего он скажет, что пробел - это ничего, т.е. переменная пустая!
Тест проверки переменной на пустоту, если в ней есть пробел
string(1) " " var_dump
переменная существует isset
переменная не пустая empty
переменная не пустая is primer
переменная пустая trim
переменная не пустая false
переменная не пустая false2
переменная не пустая true
переменная пустая true2
Вывод из теста на проверку переменной с пробелом :
Только вариант 5 после проверки переменной на пустоту, говорит, что там действительно пустота!
А как же вариант 9 -> true по значению, но false по типу(т.е. там, на самом деле должно было быть написано, что переменная с пробелом это не true )
Проверить на пустоту, если переменная не существуют
Следующий тест проверки на пустоту -> если переменная не существует!
NULL var_dump
переменная не существует isset
переменная пустая empty
переменная пустая is primer
переменная пустая trim
переменная пустая false
переменная не пустая false2
переменная пустая true
переменная пустая true2
Вывод теста проверки на пустоту отсутствующей переменной
Здесь, как говорится не нужно слов! Тест проверки на пустоту сработал как и ожидалось, кроме строки №7 -> этот пункт перекликается с поведением c true в предыдущем пункте(строка №9) -> зеркальная ситуация.
Проверим на пустоту переменную, если она существует!
И для нашего успокоения давайте проверим на пустоту, если в переменная не пустая -> пусть это будет текст:
string(30) "Здесь есть текст" var_dump
переменная существует isset
переменная не пустая empty
переменная не пустая is primer
переменная не пустая trim
переменная не пустая false
переменная не пустая false2
переменная не пустая true
переменная пустая true2
Вывод о результатах проверки если переменная не пустая:
Можно было столько проверок не делать - но мне, самому было интересно... что возвратит каждая проверка.
Что же касается проверки на пустоту, то самое правильное на мой взгляд это вариант
Эту конструкцию можно прочитать - если переменная не пустая... то -> действие
trim - в данном случае, очистит переменную, если в ней пробел...