Het zal gaan om een sub-directory na een alfabetische volgorde van de sub-directories. De recursieve functie is over en riep; indien een van de iteraties er geen subdirectory, dan de derde codesegment overgeslagen. Wanneer alle mogelijke submappen zijn huidige gemaakt bij een onderste tak van de directory tree, de functie heeft om omhoog; dat is de functie heeft om de bovenliggende map stroom te maken, zodat het dan kan de volgende sub-directory van de moedermaatschappij, de huidige. Het doel van de vierde code segment is de functie omhoog.
Als de bovenliggende map stroom worden gedaan is naar de directory boven de bovenste map te worden, dan is dat boven de map is niet actueel gemaakt; de vierde code segment zorgt dat. De Recursieve functiecode het codesegment dat de paden weergegeven in de array de browser niet tot de recursieve functie. De code van de recursieve functie is als volgt: functie searchTree () {global $ aboveDir, $ dirArr; $ CDirArr = scandir ("."); //verkrijgen directory lijst van de huidige directory voor ($ i = 0; $ i if ((is_file ($ CDirArr [$ i])) || ($ CDirArr [$ i] ==) || ($ CDirArr "." [$ i] == "..
")) {array_splice ($ CDirArr, $ i, 1); - $ i;}} //toewijzen de sub directory paden naar de volgende array-element ($ i = 0. ; $ i $ dirArr [] = getcwd () "\\\\" $ CDirArr [$ i];.. //gebruik slash voor niet-Windows-systemen} //voor de afstammeling directories ($ j = 0;. $ j chdir ($ CDirArr [$ j]); searchTree ();} //voor voorouder directories if ((chdir ("..")) && (getcwd () = aboveDir $)!) {}} Het script bevindt zich in de Dir0 directory. De globale variabelen niet tot de eerste code segment. Het eerste code segment begint met de $ CdirArr variabele.
Niet te verwarren tussen de $ CdirArr en $ iCurrDir variabelen. In PHP in een directory listing, moet u een punt (.) En een dubbele punt (..) als leden van de lijst te zien. De enkele punt is een verwijzing naar de huidige directory. De dubb