reddias/is-balanced

This PHP package provides a utility function to check if a string of parentheses is balanced and includes an implementation of a stack data structure.

dev-main 2024-07-23 07:26 UTC

This package is not auto-updated.

Last update: 2025-07-09 09:54:54 UTC


README

A PHP library providing a stack data structure and a utility function to check if a string of parentheses is balanced.

Usage

Stack Class

Basic Example:

$stack = new Stack();
$stack->push('element1');
$stack->push('element2');
$stack->push('element3');

echo $stack->pop(); // Outputs: element3
echo $stack->top(); // Outputs: element2
echo $stack->isEmpty() ? 'Empty' : 'Not Empty'; // Outputs: Not Empty

Methods:

  • push($value): Adds an element to the top of the stack.
  • pop(): Removes and returns the element at the top of the stack.
  • top(): Returns the top element of the stack without any changes.
  • isEmpty(): Checks if the stack is empty or not.

isBalanced function

Basic Example:

$result1 = isBalanced('(())');
var_dump($result1); // Outputs: bool(true)

$result2 = isBalanced('((())');
var_dump($result2); // Outputs: bool(false)

Function signature:

function isBalanced(string $value): bool

Parameters:

  • string $value: the string to check for balanced parentheses Returns:
  • bool: Returns true if the string is balanced or empty, false otherwise (Note that only parentheses are excepted)