Verification: a143cc29221c9be0

Php array удалить элемент по ключу

Php array удалить элемент по ключу

Пример массива для удаления первого элемента с помощью array_shift

Для того, чтобы продемонстрировать удаление первого элемента массива, нам понадобится подопытный массив:

$array = array('первый','второй','третий','четвертый','пятый','шестой','седьмой');

print_r

Array

(

[0] => первый

[1] => второй

[2] => третий

[3] => четвертый

[4] => пятый

[5] => шестой

[6] => седьмой

)


  • Функция для удаления первого элемента массива array_shift

    Далее нам понадобится функция array_shift, и применим её к нашему массиву, передавать это значение в масив не нужно!:

    array_shift($array);


  • Пример удаления первого элемента массива с помощью функции php

    У нас есть массив, у нас есть функция, которая умеет удалять первый элемент или первую ячейку массива, соединим теперь это все вместе и выведем уже массив с удаленным первым элементом массива:

    Array

    (

    [0] => второй

    [1] => третий

    [2] => четвертый

    [3] => пятый

    [4] => шестой

    [5] => седьмой

    )


  • Скрипт для удаления первого элемента массива в php

    Если у вас возникли с пониманием того, как должна работать функция по удалению первого элемента массива, то соберем весь код, о котором мы говорили выше!

    Вам остается, скопировать данный код и разместить его у себя на странице. и проверить, как данная функция удалит первый элемент массива

    $array = array('первый','второй','третий','четвертый','пятый','шестой','седьмой');

    array_shift( $array );

    print_r( $array );


  • Удаление первого элемента массива с помощью unset

    Вообще - этот способ удаления первой ячейки/элемента массива должен быть первым, но я как-то совсем про него и забыл... wall. Ну чтож давайте исправим эту ситуацию!

    У нас уже есть массив, чтобы не городить огород мы присвоим новой переменной таким образом:

    $NEW_ARR =

    $array = array(

    ...

    );

    И теперь... собственно перейдем к удалению первой ячейки массива, как вы наверное знаете, что если у массива не нарушена заранее нумерация ключей, то самая первая ячейка массива имеет ключ со значением [0]? другими словами, чтобы удалить первую ячейку массива, нав всего то нужно написать вот такую конструкцию(эту конструкцию пишем именно так! никаких переменных и равно!):

    unset($NEW_ARR[0]);

    И далее нам нужно вывести получившийся массив print_r( $NEW_ARR );

    Array

    (

    [1] => второй

    [2] => третий

    [3] => четвертый

    [4] => пятый

    [5] => шестой

    [6] => седьмой

    )


  • Удаление элемента в массиве по его ключу

    Если известен ключ элемента, то задача очень проста. Функция unset() позволяет удалить элемент массива или любую переменную (так же будет очищена задействованная под переменную память компьютера).

    Например, имеем массив:

    $myArr = array(1,2,3,4,5);

    Для удаления элемента со значением "3" используем код:

    unset($myArr[2]);

    Обратите внимание, что указывается не значение (3), а ключ элемента (2), начинающийся, в данном случае с 0. Так, если нужно удалить первый элемент массива, то указываем нулевой элемент:

    unset($myArr[0]);

    Так же стоит учитывать, что после наших двух удалений, массив теперь содержит три элемента:

    Array
    (
    [1] => 2
    [3] => 4
    [4] => 5
    )

    Все ключи оставшихся элементов сохраняются. Соответственно, если теперь нужно будет удалить первый элемент, то указывать надо будет в качестве ключа единицу. Поэтому, а так же, потому что мы не всегда знаем номер элемента в массиве, а лишь его значения такой вариант может не подходить.

    Удаление элемента массива по его значению

    Если ключ элемента не известен, а известно только значение массива, то придется перебрать все элементы массива циклом и удалить искомый. Например, удаляем элемент со значением "3":

    $myArr = array(1,2,3,4,5);
    foreach($myArr as $key => $item){
    if ($item == 3){
    unset($myArr[$key]);
    }
    }

    Обратите внимание, что проверяется в условии значение массива, доступное в цикле в переменной $item, а при удалении, указывается ключ элемента (переменная $key).

    Такое алгоритм подходит еще и в случае, если нужно удалить сразу группу элементов. Ведь здесь имеется условие, определяющее какие элементы удалять.