opendir() leggere il contenuto di una cartella in PHP
La funzione opendir() apre un handle di directory e permette di visualizzare un elenco dei file e delle sottocartelle contenuti in $base.
In questo esempio ciascun nome di file visualizzato è collegato con un link al file stesso.
Le immagini dei file e delle cartelle devono essere nella directory foto/
function elenco_dir($base) { $dir_vuota=1; #Flag per il controllo della directory vuota if ($handle_dir = opendir($base)) # Apre la directory, e verifica che il percorso sia corretto { echo "<UL class=\"testo\">\n"; while (false!==($dir = readdir($handle_dir))) #Legge una voce del finchè non è finita la directory, e la memorizza in $dir { if ($dir!="." && $dir!="..") #Evita di stampare "." e ".." { $dir_vuota=0; if(is_dir($base. "/" .$dir)) { #Codice nel caso di directory echo '<LI style="list-style-image: url(foto/cartella.gif)"><B>' . $dir . "</B>\n"; elenco_dir($base. "/" .$dir); echo "</LI>\n"; } else { #Codice nel caso di file #Evita di stampare alcuni tipi di file #Elimina l'estensione dei file, qualunque sia la sua lunghezza, e anche se compaiono altri punti nel nome del file if ($dir != "." && $dir != ".." && $dir != "file_da_non_mostrare.est" && substr($dir,-3,3) != "estensione_da_non_mostrare") { echo '<LI style="list-style-image: url(foto/file.gif)"><A href="' .$base . '/' . $dir . '">' . str_replace('_', ' ', substr($dir,0, strrpos($dir,"."))) . "</A></LI>\n"; } } } } if ($dir_vuota==1) echo '<LI class="testo" style="list-style-image: url(foto/sbagliato.gif)">Nessun file presente</LI>'; echo "</UL><BR>"; closedir($handle_dir); } else #Codice nel caso di percorso non trovato { echo "Percorso errato"; } } #Chiamata della funzione come esempio elenco_dir(".");
Lascia un commento
Devi essere connesso per inviare un commento.