Есть массив такого вида:
Array
(
[0] => Array
(
[date] => 07.08.2018
[name] => Название 1
[desc] => Описание 1.
)
[1] => Array
(
[date] => 07.08.2018
[name] => Название 2
[desc] => Описание 2.
)
)
Т.е. В массиве массивы в тремя ключами.
Как удалять массивы, в которых не заполнен один или более ключей? Т.е. оставлять только те поля, в которых всё заполнено?
Например, при таких ситуациях:
Array
(
[0] => Array
(
[date] => 07.08.2018
[name] => Название 1
[desc] => Описание 1.
)
[1] => Array
(
[date] => 07.08.2018
[name] => Описание 2
[desc] => Описание 2.
)
[2] => Array
(
[date] =>
[name] =>
[desc] =>
)
)
или
Array
(
[0] => Array
(
[date] => 07.08.2018
[name] => Название 1
[desc] => Описание 1.
)
[1] => Array
(
[date] => 07.08.2018
[name] => Название 2
[desc] => Описание 2.
)
[2] => Array
(
[date] =>
[name] => Описание 3
[desc] =>
)
)
Удалить массив с ключом [2]
Ответ
$arr = [
[
'date' => '07.08.2018',
'name' => 'Название 1',
'desc' => 'Описание 1.'
],
[
'date' => '07.08.2018',
'name' => 'Название 1',
'desc' => 'Описание 1.'
],
[
'date' => '',
'name' => 'Название 1',
'desc' => '.'
]
];
foreach ($arr as $idx => $subarray) {
foreach ($subarray as $name => $item) {
if ($item == null) unset($arr[$idx]);
}
}
print_r($arr);
Комментариев нет:
Отправить комментарий