Как из массива удалить пустые элементы в PHP?

Пользователь

от greyson , в категории: PHP , 3 года назад

Как из массива удалить пустые элементы в PHP?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от loyal , 3 года назад

@greyson Вы можете использовать функцию array_filter() в PHP, чтобы удалить из массива пустые элементы, ниже пример кода:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<?php

$arr = [
    null,
    "",
    "Тест",
    "321",
    5
];

print_r(array_filter($arr));
//Вывод:
//Array
//(
//    [2] => Тест
//    [3] => 321
//    [4] => 5
//)


Пользователь

от jensen , 2 года назад

@greyson 

Вы можете использовать функцию array_filter() с анонимной функцией, чтобы удалить пустые элементы из массива. Например:

1
2
3
$input = array("a", "b", "", "c", "", "d");
$result = array_filter($input, function($value) { return $value !== ""; });
print_r($result);


Это выведет массив Array ( [0] => a [1] => b [3] => c [5] => d )


Вы можете также использовать функцию array_values() чтобы переиндексировать массив после удаления элементов. Например:

1
2
3
$input = array("a", "b", "", "c", "", "d");
$result = array_values(array_filter($input, function($value) { return $value !== ""; }));
print_r($result);


Это выведет массив Array ( [0] => a [1] => b [2] => c [3] => d )