⊗ppPmRcEP 218 of 447 menu

Rekursija su parametru PHP

Pasinaudokime rekursija, kad iš eilės atvaizduotume masyvo elementus. Tegul masyvas iš pradžių perduodamas funkcijos parametrui:

<?php func([1, 2, 3]); ?>

Kol kas nenaudodami rekursijos, pasinaudokime funkcija array_shift kad iš eilės atvaizduotume visus masyvo elementus:

<?php function func($arr) { var_dump(array_shift($arr)); // atvaizduos 1 var_dump($arr); // atvaizduos [2, 3] - masyvas sumažėjo var_dump(array_shift($arr)); // atvaizduos 2 var_dump($arr); // atvaizduos [3] - masyvas sumažėjo var_dump(array_shift($arr)); // atvaizduos 3 var_dump($arr); // atvaizduos [] - masyvas tuščias } func([1, 2, 3]); ?>

Kaip matote, funkcija array_shift iškerpa ir grąžina pirmąjį masyvo elementą, o pats masyvas tuo elementu sumažėja.

Dabar panaudokime rekursiją:

<?php function func($arr) { var_dump(array_shift($arr)); var_dump($arr); if (count($arr) !== 0) { func($arr); } } func([1, 2, 3]); ?>

Tiesą sakant, žinoma, paprasčiausia būtų perkelti masyvo elementus ciklu. Pateikti pavyzdžiai tiesiog demonstruoja rekursijos veikimą paprastais pavyzdžiais (ne iš realaus gyvenimo). Naudingesni rekursijos taikymo pavyzdiai yra tiesiog sudėtingesni, juos išnagrinėsime kiek vėliau.

Duotas masyvas:

<?php $arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5]; ?>

Pasinaudojant rekursija, atvaizduokite šio masyvo elementus ekrane.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti