Stack is a special kind of linear table because it can only insert or delete elements at one end of the linear table (that is, the feed stack and the stack).
Splstack is to inherit the double linked list (spldoublylinkedlist) implementation stack.
The class summary is as follows:
The simple use is as follows:
Think of the stack as an inverted array
$stack = new Splstack ();
/**
* Visible stack and double linked list is the difference is iteratormode changed, stack iteratormode can only be:
* (1) spldoublylinkedlist::it_mode_lifo | Spldoublylinkedlist::it_mode_keep (default, iteration data Save)
* (2) Spldoublylinkedlist::it_mode_lifo | Spldoublylinkedlist::it_mode_delete (Data deletion after iteration)
/$stack->setiteratormode (spldoublylinkedlist::it_ Mode_lifo | Spldoublylinkedlist::it_mode_delete);
$stack->push (' a ');
$stack->push (' B ');
$stack->push (' C ');
$stack->pop (); Out Stack
$stack->offsetset (0, ' a ');//index 0 is the last element
foreach ($stack as $item) {
echo $item. Php_eol;
Print_r ($stack);//Test Iteratormode