SplStack クラス

はじめに

SplStack クラスは、スタックの主要な機能を提供します。 双方向リンクリストのイテレータのモードを SplDoublyLinkedList::IT_MODE_LIFO に設定することで実装しています。

クラス概要

SplStack
extends SplDoublyLinkedList
/* 継承した定数 */
public const int SplDoublyLinkedList::IT_MODE_LIFO;
public const int SplDoublyLinkedList::IT_MODE_FIFO;
public const int SplDoublyLinkedList::IT_MODE_DELETE;
public const int SplDoublyLinkedList::IT_MODE_KEEP;
/* 継承したメソッド */
public void add(int $index, mixed $value)
public mixed bottom()
public int count()
public mixed current()
public int getIteratorMode()
public bool isEmpty()
public int key()
public void next()
public bool offsetExists(int $index)
public mixed offsetGet(int $index)
public void offsetSet(intnull $index, mixed $value)
public void offsetUnset(int $index)
public mixed pop()
public void prev()
public void push(mixed $value)
public void rewind()
public string serialize()
public int setIteratorMode(int $mode)
public mixed shift()
public mixed top()
public void unserialize(string $data)
public void unshift(mixed $value)
public bool valid()

例1 SplStack の例

<?php
$q = new SplStack();
$q[] = 1;
$q[] = 2;
$q[] = 3;
foreach ($q as $elem)  {
 echo $elem."\n";
}
?>

上の例の出力は以下となります。

3
2
1