В этой статье будем делать различные проверки массива. В том числе проверим является ли переменная массивом, а так же проверим есть ли у ключей массива пустые значения. Будем двигаться от простого к более сложному. И первое, что можно сделать, это проверить на массив. Для этого нам помоет встроенная в язык PHP функция is_array. Разберем небольшой пример.
1
2
3
4
5
6
$arr=['id','name','email'];// Массив элементовif(is_array($arr)){echo'Это массив';}else{echo'Это не массив';}
$arr = ['id', 'name', 'email']; // Массив элементов
if(is_array($arr)){
echo 'Это массив';
}else{
echo 'Это не массив';
}
Функция вернет true, если это массив и false — если не массив. Это простой пример и сложностей возникнуть не должно. Перейдем к следующему примеру.
Проверка массива на пустоту и пустые элементы в PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$arr=[];if(empty($arr)){echo'Массив пустой';}else{echo'Есть элементы';}// Выведет сообщение, что массив пустой$arr=[''];if(empty($arr)){echo'Массив пустой';}else{echo'Есть элементы';}// Массив будет не пустым даже если в нем только кавычки.
$arr = [];
if(empty($arr)){
echo 'Массив пустой';
}else{
echo 'Есть элементы';
}
// Выведет сообщение, что массив пустой
$arr = [''];
if(empty($arr)){
echo 'Массив пустой';
}else{
echo 'Есть элементы';
}
// Массив будет не пустым даже если в нем только кавычки.
Функция empty сработает только в том случае, когда в массиве нет вообще никаких элементов. Поэтому ее лучше не использовать при проверке массивов. В этом случае нам поможет еще одна функция — array_diff. С ее помощью мы сравним исходный массив с другим массивом и в случае расхождения выведем элементы массива, которые не совпадают. Может быть немного сумбурно и не понятно, но давайте разберем на примере.
Функция пропустит все пустые элемент массива, в том числе NULL и false и выведет только те, в которых что-то есть. Мы так же можем проверить какой именно элемент массива был пустой с помощью цикла for.
1
2
3
4
5
6
7
8
$arr=['name','','num',NULL,'',false,'Alex',''];for($i=0;$i<count($arr);$i++){if(empty($arr[$i])){echo"Элемент $i пустой"."<br>";}else{echo"Элемент $i не пустой"."<br />";}}
Первым аргументом указываем что будем искать, вторым — где. На этом по работе с массивами окончен. Надеюсь, что вам в нем все было понятно. Но если остались какие-то вопросы, задавайте их в комментариях.
Где узнать про php проверка наличия элемента в массиве
Здесь же есть. in_array
Хочу купить php проверка наличия элемента в массиве
Продам.
Коменты убили)))
)))