Trabalhando com recursão em PHP
Na programação, existe um conceito chamado
recursão - é quando uma função chama
a si mesma. Vamos ver um exemplo.
Vamos exibir números de 1
a 10 usando recursão:
<?php
$i = 1;
function func()
{
global $i;
echo $i;
$i++;
if ($i <= 10){
func(); // aqui a função chama a si mesma
}
}
func();
?>
Vamos discutir como este código funciona.
Temos uma variável global $i
e uma função func, dentro da qual no console
é exibido o conteúdo da variável $i,
e então é feito um ++.
Se nossa variável $i for menor ou
igual a 10, a função é chamada novamente.
Como a variável $i é global,
em cada nova chamada da função, ela
terá o valor definido na chamada anterior
da variável $i.
Isso fará com que a função continue chamando a si
mesma até que $i se torne
maior que 10.
Observe que, no nosso caso, não é possível executar a função
sem o if - se isso for feito,
resultará em uma chamada infinita de funções.