Gå til innhold

Rekursivt script som lister mapper/filer ved ftp


Anbefalte innlegg

Skrevet

Hei

 

Noen som vet hvordan jeg kan lage/finne et script som lister opp mapper og filer m/undermapper på en ftp server? Jeg vil ha output i dette formatet:

/ftproot/foo.txt

/ftproot/foo/foo2.txt

/ftproot/excample

------

Du forstår sikkert hva jeg mener. Er dette mulig?

Videoannonse
Annonse
Skrevet

Hehe... da er det ikke noe problem :p

 

Koble deg til med ftp_connect()

Bruk ftp_login() for å logge deg inn

Så hvis du ikke vil at scriptet skal ta eveigheter, så bruker du ftp_rawlist() for å liste alle filer og mapper.

 

Da får du opp alle filene i en liste, som starter med type og rettigheter - f.eks.: drwxr-x---

Når den starter med "d" så betyr det at det er en mappe (directory). Hvis det står "l" så er det en link. Ofte så kan www være linket til f.eks. public_html osv. Siden dette ikke er en egen mappe så må du selv bestemme hvordan du vil håndtere de.

 

Bruk ftp_chdir() for å bytte mappe.

 

That's it!

Glem ikke et dette er kommunikasjon mellom to servere, som sender og mottar så informasjonspakker - i tillegg til det er ftp - så scriptet kan bli tregt dersom det er for mange mapper.

Skrevet

Se om jeg har forstått teorien bak dette:

 

$liste = ftp_rawlist

Function liste_fun(her starter vi en funksjon)

foreach ($liste is_dir)

-om det er en mappe:

$map = $map.$liste

start funksjonen liste_fun

-om ikke, $map.$liste til array eller mysql

 

output av arrayen $liste.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...