SplStack 只是一個迭代模式為 IT_MODE_LIFO 和 IT_MODE_KEEP 的 SplDoublyLinkedList
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
SplStack 類別透過將迭代器模式設定為 SplDoublyLinkedList::IT_MODE_LIFO
,使用雙向鏈結串列實作堆疊的主要功能。
範例 #1 SplStack 範例
<?php
$q = new SplStack();
$q[] = 1;
$q[] = 2;
$q[] = 3;
foreach ($q as $elem) {
echo $elem."\n";
}
?>
上述範例將輸出
3 2 1
SplStack 只是一個迭代模式為 IT_MODE_LIFO 和 IT_MODE_KEEP 的 SplDoublyLinkedList
<?php
// SplStack 模式為 LIFO(後進先出)
$q = new SplStack();
$q[] = 1;
$q[] = 2;
$q[] = 3;
$q->push(4);
$q->add(4,5);
$q->rewind();
while($q->valid()){
echo $q->current(),"\n";
$q->next();
}
?>
輸出
5
4
3
2
1