*   >> Lezen Onderwijs artikelen >> tech >> web development

Listing Directories van een Directory Boom Met Php

Er zijn vier code segmenten in de recursieve functie. Om een ​​lijst van de submappen van elke map, die directory heeft om de huidige directory. Lees de bovenstaande functie omtrek. De eerste code-segment krijgt de namen zonder de paden van de huidige directory. De eerste keer dat de functie wordt aangeroepen, de huidige directory is de bovenste map. Het tweede segment vormt de volledige paden van subdirectory's en stuurt ze naar de array. Het derde segment verandert de huidige directory aan die van een subdirectory, waardoor het nog niet actueel gemaakt.

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

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.