Stack in PHP
A stack is a linear dynamic data structure that follows Last-In/First-Out (LIFO) principle. In a stack, addition of a new element and deletion of an element occurs at the same end which implies that the element which is added last in the stack will be the first to be removed from the stack.
Features of stack
- It is a dynamic data structure.
- It has dynamic size.
- It uses dynamic memory allocation.
Operations of a stack
- isEmpty(): Checks whether the stack is empty or not.
- size(): Returns the size of the stack.
- topElement(): Returns the top element of the stack.
- push(x): Adds a new element ‘x’ at the top of the stack. Consequently, size of the stack increases by 1.
- pop(): Deletes the top element of the stack. Consequently, size of the stack decreases by 1.
Implementation of Stack
<?php class CreateStack { public $top; public $stack = array(); function __construct() { $this->top = -1; } // create a function to check whether // the stack is empty or not public function isEmpty() { if($this->top == -1) { echo "Stack is empty. \n"; } else { echo "Stack is not empty. \n"; } } //create a function to return size of the stack public function size() { return $this->top+1; } //create a function to add new element public function push($x) { $this->stack[++$this->top] = $x; echo $x." is added into the stack. \n"; } //create a function to delete top element public function pop() { if($this->top < 0){ echo "Stack is empty. \n"; } else { $x = $this->stack[$this->top--]; echo $x." is deleted from the stack. \n"; } } public function topElement() { if($this->top < 0) { echo "Stack is empty. \n"; } else { return $this->stack[$this->top]; } } } // test the code $MyStack = new CreateStack(); $MyStack->push(10); $MyStack->push(20); $MyStack->push(30); $MyStack->push(40); $MyStack->pop(); $MyStack->isEmpty(); ?>
The above code will give the following output:
10 is added into the stack. 20 is added into the stack. 30 is added into the stack. 40 is added into the stack. 40 is deleted from the stack. Stack is not empty.
Recommended Pages
- PHP Program - To Check Prime Number
- PHP Program - Bubble Sort
- PHP Program - Selection Sort
- PHP Program - Maximum Subarray Sum
- PHP Program - Reverse digits of a given Integer
- PHP - Swap two numbers
- PHP Program - Fibonacci Sequence
- PHP Program - Insertion Sort
- PHP Program - Find Factorial of a Number
- PHP Program - Find HCF of Two Numbers
- PHP Program - To Check Whether a Number is Palindrome or Not
- PHP Program - To Check Whether a String is Palindrome or Not
- PHP Program - Heap Sort
- PHP Program - Quick Sort
- PHP - Swap Two Numbers without using Temporary Variable
- PHP Program - To Check Armstrong Number
- PHP Program - Counting Sort
- PHP Program - Radix Sort
- PHP Program - Find Largest Number among Three Numbers
- PHP Program - Print Floyd's Triangle