Qualche tempo fa mi è capitato di dover sviluppare per un amico un applicativo che tra le sue funzioni avesse la possibilità di visualizzare il contenuto di una cartella tramite una pagina PHP.
Per comodità ho preferito creare il tutto direttamente su una classe che evolvendosi è diventata ottima soprattutto per la gestione di immagini in cartelle e sottocartelle.

L’utilizzo è molto semplice, innanzitutto è necessario richiamare il file della classe e ovviamente creare il nuovo oggetto :

require("dirlist.class.php");
$myFileList = New DirList;

Una volta fatto ciò non resta che passare al metodo getList() come parametro la directory da “listare”, questo compilerà la proprietà arrList con un array con i dati di file e sottocartelle.

$myFileList->getList("directory");
$file = $myFileList->arrList;

Una volta fatto ciò la variabile array $files conterrà tutti gli elementi della cartella nominata “directory” mettendovi a disposizione un array solo da gestire nel modo che ritenete più opportuno.

La classe inoltre è stata dotata anche di un metodo che permette la creazione di una pagina XML con il contenuto della getList().
Per generare il file XML bastano poche righe di codice in più:

$xml = $myFileList->getXML($file);
header ("content-type: text/xml");
echo $xml;

Per il download: