SplDoublyLinkedList::add()
(PHP 5 >= 5.5.0, PHP 7)
Add/insert a new value at the specified index
说明
public SplDoublyLinkedList::add(mixed $index, mixed $newval) : void
Insert the value$newvalat the specified$index, shuffling the previous value at that index (and all subsequent values) up through the list.
参数
- $index
The index where the new value is to be inserted.
- $newval
The new value for the$index.
返回值
没有返回值。
错误/异常
ThrowsOutOfRangeExceptionwhen$indexis out of bounds or when$indexcannot be parsed as an integer.
$a = new SplDoublyLinkedList;
$arr=[1,2,3,4,5,6,7,8,9];
for($i=0;$i<count($arr);$i++){
$a->add($i,$arr[$i]);
}
print_r($a);
//Output:
SplDoublyLinkedList Object
(
[flags:SplDoublyLinkedList:private] => 0
[dllist:SplDoublyLinkedList:private] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
)
)Maybe the basic usage is like this i think..
$a = new \SplDoublyLinkedList;
if ($a instanceof \SplDoublyLinkedList) {
$a->add(0, 'Paulus');
$a->add(1, 'Gandung');
$a->add(2, 'Prakosa');
// then, iterate over that because \SplDoublyLinkedList
// is implementing \Iterator interface.
foreach ($a as $value) {
echo sprintf("%s\n", $value);
}
}