Как удалить элемент из массива
Короткий ответ
unset() удаляет элемент по ключу. Чтобы ключи снова шли по порядку, пропустите массив через array_values():
<?php
$colors = ['red', 'green', 'blue'];
unset($colors[1]);
print_r(array_values($colors));Результат:
Array
(
[0] => red
[1] => blue
)По значению
Если ключ неизвестен, отфильтруйте массив функцией array_filter():
<?php
$colors = ['red', 'green', 'blue'];
$colors = array_values(array_filter($colors, fn ($color) => $color !== 'green'));
echo implode(', ', $colors);Результат:
red, blueПервый или последний элемент
array_shift() убирает первый элемент, array_pop() — последний:
<?php
$numbers = [1, 2, 3, 4];
array_shift($numbers);
array_pop($numbers);
echo implode(', ', $numbers);Результат:
2, 3Функции из этого ответа
- array_filter — Оставляет в массиве элементы, прошедшие проверку.
- array_search — Ищет значение в массиве и возвращает его ключ.
- array_pop — Удаляет последний элемент массива и возвращает его.