Оглавление скрыть


Вы можете авторизоваться через ВКонтакте, Фейсбук и оставить комментарий


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

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

Пример

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

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

$array 
= array(1,2,3,4,5,6,7,8,9,10);

echo 
'<p>Исходный массив</p><pre>'.print_r($arraytrue).'</pre>';

$key array_search(5$array);
if (
$key !== false)
{
    unset(
$array[$key]);
}

echo 
'<p>Массив с удаленным значением</p><pre>'.print_r($arraytrue).'</pre>';

?>

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Исходный массив

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
)
Опубликовано: 02 марта 2012  ·  Автор: Артём Фёдоров  ·  41978 просмотров

Категория

ГлавнаяПрограммированиеPHPМассивыНайти и удалить элемент массива (PHP)

Чтобы оставить комментарий нужно авторизоваться на сайте
или войти через ВКонтакте или Фейсбук

Войти через ФейсбукВойти через Твиттер

Комментарии

Андрей Бараков. Спасибо. То что нужно.
Temax Timoshenko · 4 года назад
Вышло как "умничать". Хотя спасибо за название статьи "Удалить и сдвинуть" =)
Артём Фёдоров · 5 лет назад
Глупо удалять через unset -_-
Индекс тоже пропадает
Конечно, если нужно именно удалить элемент, то ладно, способ верный
Но обычно нужна операция вида "удалить и сдвинуть"
Что-то вроде
[ваш_код]
$array=array_values($array);
Не умничаю, просто совет)
Андрей Бараков · 5 лет назад
Массивы, PHP, Программирование

© 2010-2017 expange.ru
При полном или частичном копировании статей сайта, ссылка на источник обязательна.

Хотите узнать больше информации, пишите на: artem@expange.ru

Полезное онлайн  ·  Новости  ·  Изображения  ·  Статьи по датам

О проекте  ·  Правила пользования  ·  Представительства

Благодарности и пожелания