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
$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.