-
[PHP] Lista file
Salve,
mi servirebbe uno script php che mi crei una lista di determinati file in una cartella.
Però questi file devono avere una precisa estensione (esempio .rar)
Inoltre mi serverebbero solamente gli ultimi 5 file inseriti :???:
per ora sono riuscito a fare sono questo
Codice PHP:
<?
$path = "source/";
$dir_handle = @opendir($path) or die("Impossibile visualizzare file");
echo "File:<br/>";
while ($file = readdir($dir_handle))
{
if($file!="." && $file!="..")
echo "<a href='$path$file'>$file</a><br/>";
}
closedir($dir_handle);
?>
ma mi elenca TUTTI i file in una cartella.
grazie.
-
prova così (devi impostare la cartella alla prima riga)
Codice PHP:
if($handle = opendir('.'))
{
$counter = 0;
while(false !== ($file = readdir($handle)) && $counter < 5)
{
if(end(explode(".", $file)) == "rar")
{
echo "$file<br/>";
$counter++;
}
}
closedir($handle);
}
Ordinarli per data penso sia un pò più lungo, magari aspetta qualcun altro che ne sa di più
-
opendir è una complicazione antica, perché continuate ad usarla? :arrow: glob()
Ordinarli per data vuol dire andare a prendere filemtime() per ciascuno dei file, e poi fare sort() (o ksort().
Se cerchi sul forum o su google troverai però mille esempi già pronti, come ad esempio questo per puro caso scritto da me.
-
perfetto perfetto!
ora ho solo un problema XD
se io ho un file chiamato così
Nome file.rar
come faccio a riportarmi in echo solamente il nome del file senza l'estensione? (in questo caso .rar)
provo così? o c'è un altro modo?
substr($fileName, 0, strrpos($fileName, '.'));
-
Uhm, in che codice?
Se intendi nel mio esempio sopra, basta cambiare il template sostituendo %%fullname%% con %%name%%. Altrimenti c'e' la funzione basename()