-
[PHP] readdir()
Visualizzo il contenuto di una directory in modo che il nome di ogni file contenuto sia associato ad un link che punta allo stesso file. Ho scritto questo codice:
$dir=opendir("nome directory");
echo "CONTENUTO<P>";
while ($file = readdir($dir)){?>
<A HREF=" <?php echo "nome directory/".$file; ?>"> <?php echo $file; ?></A> <br>
<?php }
closedir($dir);
funziona tutto ma dopo la scritta CONTENUTO compaiono 2 righe indesiderate. Sulla prima c’è un punto (.) e sulla seconda un doppio punto (..).
Sapete il perché?
-
fai cosi:
Codice PHP:
$dir = 'dir_name';
if($handle = opendir($dir))
{
echo 'CONTENUTO: <p>';
while($file = readdir($handle))
{
if($file != '.' && $file != '..')
{
echo "<a href=\"{$dir}/{$file}\">$file</a><br>";
}
}
echo '</p>';
}
closedir($handle);
dovrebbe andare
ciao ^__^
-
. e .. in realtà nn sono delle directory vere è proprie, i .. indicano la cartella superiore a quella attuale e . invece è la directory principale.
puoi toglierle mettendo dentro al while
if ($file != "." && $file != "..") {
-
ehm.... sono un cretino!!!
non ci avevo pensato che nelle cartelle sono sempre presenti questi due puntatori.....scusate