Lavorare con la ricorsione in PHP

Nella programmazione esiste un concetto chiamato ricorsione - è quando una funzione chiama se stessa. Diamo un'occhiata a un esempio. Visualizziamo i numeri da 1 a 10 utilizzando la ricorsione:

php<?php
  $i = 1;
  
  function func()
  {
    global $i;
    
    echo $i;
    $i++;
    
    if ($i <= 10){
      func(); // qui la funzione chiama se stessa
    }
  }
  func();
?>

Analizziamo come funziona questo codice.

Abbiamo una variabile globale $i e una funzione func, all'interno della quale viene visualizzato il contenuto della variabile $i, e poi viene incrementato con ++.

Se la nostra variabile $i è minore o uguale a 10, la funzione viene richiamata. Poiché la variabile $i è globale, ad ogni nuova chiamata della funzione in essa sarà presente il valore della variabile $i impostato durante la chiamata precedente.

Il risultato è che la funzione continuerà a chiamare se stessa finché $i non diventerà maggiore di 10.

Si noti che in questo caso non è possibile avviare la funzione senza if - se si facesse ciò, si otterrebbe una chiamata infinita di funzioni.