Найти и удалить элемент массива (PHP)

Чтобы удалить определенный элемент из числового массива, сперва нужно найти ключ данного элемента. Для поиска ключа нужно воспользоваться функцией array_search(), а затем при помощи функции unset() удалить элемент.

Пример

Например есть массив с числами от 1 до 10. Нужно удалить элемент массива со значением 5.

<?php $array = array(1,2,3,4,5,6,7,8,9,10); echo '<p>Исходный массив</p><pre>'.print_r($array, true).'</pre>'; $key = array_search(5, $array); if ($key !== false) { unset($array[$key]); } echo '<p>Массив с удаленным значением</p><pre>'.print_r($array, true).'</pre>'; ?>

В результате на экране вы увидите.

Исходный массив Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 [9] => 10 ) Массив с удаленным значением Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [5] => 6 [6] => 7 [7] => 8 [8] => 9 [9] => 10 )

Категории

ПрограммированиеPHPМассивы в PHPМассивы

Читайте также

Комментарии

Temax Timoshenko

Андрей Бараков. Спасибо. То что нужно.

Ответить
Артём Фёдоров

Вышло как "умничать". Хотя спасибо за название статьи "Удалить и сдвинуть" =)

Ответить
Андрей Бараков

Глупо удалять через unset -_-
Индекс тоже пропадает
Конечно, если нужно именно удалить элемент, то ладно, способ верный
Но обычно нужна операция вида "удалить и сдвинуть"
Что-то вроде
[ваш_код]
$array=array_values($array);
Не умничаю, просто совет)

Ответить