SyntaxStudy
Sign Up
PHP Beginner 1 min read

Recursion

Recursion

A function that calls itself. Every recursive function needs:

  1. A base case that stops recursion
  2. A recursive case that moves toward the base

Use recursion for problems naturally structured as smaller sub-problems (trees, nested data, math sequences).

Example
<?php
// Factorial
function factorial(int $n): int {
    if ($n <= 1) return 1;        // base case
    return $n * factorial($n - 1); // recursive case
}
echo factorial(5); // 120

// Fibonacci
function fib(int $n): int {
    if ($n <= 1) return $n;
    return fib($n - 1) + fib($n - 2);
}

// Flatten nested array
function flatten(array $arr): array {
    $result = [];
    foreach ($arr as $item) {
        if (is_array($item)) {
            $result = array_merge($result, flatten($item));
        } else {
            $result[] = $item;
        }
    }
    return $result;
}
?>