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.