SplDoublyLinkedList::offsetUnset

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SplDoublyLinkedList::offsetUnset指定した $index の値を削除する

説明

public SplDoublyLinkedList::offsetUnset(int $index): void

指定したインデックスの値を削除します。

パラメータ

index

削除したいインデックス。

戻り値

値を返しません。

エラー / 例外

index が範囲外を指すときや index が整数として解釈できないときに OutOfRangeException をスローします。

add a note add a note

User Contributed Notes 1 note

up
1
marco dot paulo dot lopes at gmail dot com
10 years ago
When unsetting an offset, the element will be removed from the double linked list. So the following code:

<?php

$obj
= new SplDoublyLinkedList();

$obj->push(4);
$obj->push(5);
$obj->push(6);

$obj->offsetUnset(1);
echo
"Our Linked List:";
print_r($obj);

?>

Will output:

Our Linked List:SplDoublyLinkedList Object
(
    [flags:SplDoublyLinkedList:private] => 0
    [dllist:SplDoublyLinkedList:private] => Array
        (
            [0] => 4
            [1] => 5
            [2] => 6
        )

)
Our New Linked List:SplDoublyLinkedList Object
(
    [flags:SplDoublyLinkedList:private] => 0
    [dllist:SplDoublyLinkedList:private] => Array
        (
            [0] => 4
            [1] => 6
        )

Notice that the element with the index 2 has now the index 1. The original element with index 1 did not only had it's value unset but was also removed from the list.
To Top