Stack Handling Library : array « Data Structure « PHP






Stack Handling Library

 
<?php
function &stack_initialize() {
    $new = array();
    return $new;
}

function stack_destroy(&$stack) {
    unset($stack);
}

function stack_push(&$stack, $value) {
    $stack[] = $value;
}

function stack_pop(&$stack) {
    return array_pop($stack);
}

function stack_peek(&$stack) {
    return $stack[count($stack)-1];
}

function stack_size(&$stack) {
    return count($stack);
}

function stack_swap(&$stack) {
    $n = count($stack);

    if ($n > 1) {
        $second = $stack[$n-2];
        $stack[$n-2] = $stack[$n-1];
        $stack[$n-1] = $second;
    }
}

function stack_dup(&$stack) {
    $stack[] = $stack[count($stack)-1];
}

$mystack =& stack_initialize();
stack_push($mystack, 73);
stack_push($mystack, 74);
stack_push($mystack, 5);

stack_dup($mystack);

echo '<p>Stack size is: ', stack_size($mystack), '</p>';

echo '<p>Popped off the value: ', stack_pop($mystack), '</p>';

stack_swap($mystack);

echo '<p>Current top element is: ', stack_peek($mystack), '</p>';

stack_destroy($mystack);
?>
  
  








Related examples in the same category

1.A list of numbers using an array variable
2.Accessing Array Elements
3.Arrays
4.Converting an object to an array will convert properties to elements of the resulting array
5.Create an array
6.Creates an array with keys 0 through 3
7.Creating arrays with array()
8.Creating multidimensional arrays with array()
9.Creating numeric arrays with array()
10.Setting up an associative array is similarly easy
11.Demonstrate the Difference Between the Array '+' Operator and a True Array Union
12.Using the array function to create an array of weekdays
13.Using the array() Function
14.Queue Handling Library