Rekursiooniga töötamine PHP-s

Programmeerimises on selline mõiste nagu rekursioon - see on siis, kui funktsioon kutsub välja iseennast. Vaatame näite abil. Väljastame rekursiooni abil numbrid 1 kuni 10:

php<?php
  $i = 1;
  
  function func()
  {
    global $i;
    
    echo $i;
    $i++;
    
    if ($i <= 10){
      func(); // siin kutsub funktsioon välja iseennast
    }
  }
  func();
?>

Arutleme, kuidas see kood töötab.

Meil on globaalne muutuja $i ja funktsioon func, mille sees konsooli väljastatakse muutuja $i sisu, seejärel tehakse ++.

Kui meie muutuja $i on väiksem või võrdne kui 10, siis kutsutakse funktsioon uuesti välja. Kuna muutuja $i on globaalne, siis iga uue funktsiooni väljakutsega on selles eelmise väljakutsega määratud muutuja $i väärtus.

Tulemuseks on, et funktsioon kutsub iseennast välja kuni $i muutub suuremaks kui 10.

Pidage meeles, et meie puhul ei saa funktsiooni käivitada ilma if-ita - kui seda teha, siis tekib lõputu funktsioonide väljakutsete ahel.