Как сравнивать переменные с массивом в PHP

Доброго времени суток, начинающие PHP программисты. В этой статье мы поговорим о том как сравнивать переменные в PHP с массивом.

Без лишней письменной ерунды сразу приступим к делу. Итак, посмотрим работу сравнения в условии if. Например нам необходимо определить равняется ли переменная $a любому из значений массива $b.

Если бы $b была тоже переменной, мы могли бы использовать следующий код:

if($a==$b){
//Какое-то действие
}

На примере мы видем простейшее условие в PHP, которое определяет равняется ли переменная $b переменной $a и в случае равенства обрабатывается Какое-то действие. В противном случае PHP-обработчик идёт лесом от условия.

Некоторые новички не могут сравнивать переменные с массивом в PHP, что порой очень удобно.

Например, нам необходимо сравнить переменную $a с пятью значениями. Пусть эти значения будут числа 1, 2, 3, 4, 5. Исходя из простой логики на основе обычного применения условия можно создать такой код:

if($a==1 OR $a==2 OR $a==3 OR $a==4 OR $a==5){
//Какое-то действие
}

В приведённом для примера коде мы видим сравнение переменной $a с пятью числами. Код получился веьма некрасив, особенно учитываю что используются только 5 значений. При использовании большего числа код потеряет читабельность и будет совсем некрасив.

Для удобства единовременного сравнивания переменной $a с большим количеством значений необходимо использовать массив.

Итак, давайте посмотрим как бы выглядел код с использованием массива:

$b=Array("1","2","3","4","5"); //Записываем данные в массив
foreach($b as $z){ //Поочерёдно считываем данные из массива
if($a==$z){
//Какое-то действие
}
}

Если выразить код в более правильно, лаконичной форме, то получится:

$b=array('1','2','3','4','5');
if (in_array($a, $b)){
//Какое-то действие
}

Всё, вышеприведённый код является сравнением переменной с массивом PHP.


You have no rights to post comments

Карта сайта