Trabajo con recursión en PHP

En programación existe un concepto llamado recursión - es cuando una función se llama a sí misma. Veamos un ejemplo. Mostremos números del 1 al 10 usando recursión:

php<?php
  $i = 1;
  
  function func()
  {
    global $i;
    
    echo $i;
    $i++;
    
    if ($i <= 10){
      func(); // aquí la función se llama a sí misma
    }
  }
  func();
?>

Analicemos cómo funciona este código.

Tenemos una variable global $i y una función func, dentro de la cual en la consola se muestra el contenido de la variable $i, y luego se hace ++.

Si nuestra variable $i es menor o igual a 10, entonces la función se llama nuevamente. Debido a que la variable $i es global, en cada nueva llamada a la función en ella estará el valor establecido durante la llamada anterior de la variable $i.

Resultará que la función se llamará a sí misma hasta que $i se vuelva mayor que 10.

Tenga en cuenta que en nuestro caso no se puede ejecutar la función sin if - si se hace esto, resultará en una llamada infinita de funciones.