Forum und email

readdir

(PHP 4, PHP 5)

readdir — Legge una voce dall'handle della directory

Descrizione

string readdir ( resource $dir_handle )

Restituisce il nomefile del file successivo della directory. I nomi dei file vengono restituiti secondo l'ordine in cui sono memorizzati nel filesystem.

Si faccia caso al modo in cui il valore restituito da readdir() viene controllato negli esempi successivi. Viene controllato esplicitamente che il valore restituito sia identico a (uguale a e dello stesso tipo di (vedere Comparison Operators per maggiori informazioni) FALSE altrimenti avverrebbe che ogni nome di directory il cui nome fosse valutato FALSE interromperebbe il loop (per esempio una directory chiamata "0").

Example#1 Elenca tutti i file presenti in una directory

<?php
// Nota che l'operatore !== non è esistito fino alla versione 4.0.0-RC2
if ($handle opendir('/percorso/ai/file')) {
    echo 
"Handle della directory: $handle\n";
    echo 
"File:\n";

   
/* Questa è la maniera corretta di eseguire un loop all'interno di una directory. */
   
while (false !== ($file readdir($handle))) { 
       echo 
"$file\n";
   }

   
/* Questa è la maniera SCORRETTA di eseguire un loop all'interno di una directory. */
   
while ($file readdir($handle)) { 
       echo 
"$file\n";
   }

   
closedir($handle); 
}
?>

Nota che readdir() restituirà le voci . e ... Se non si vogliono ottenere queste, si possono semplicemente eliminare:

Example#2 Elenca tutti i file della directory in uso ed elimina . e ..

<?php 
if ($handle opendir('.')) {
    while (
false !== ($file readdir($handle))) { 
        if (
$file != "." && $file != "..") { 
            echo 
"$file\n"
        } 
    }
    
closedir($handle); 
}
?>

Vedere anche: is_dir() e glob().