Salve,
ho realizzato il seguente script
codice:
<?php
function dir_list($directory = FALSE) {
$dirs= array();
$files = array();
if ($handle = opendir("" . $directory)) {
while ($file = readdir($handle)) {
if (is_dir("./{$directory}/{$file}")) {
if ($file != "." & $file != "..") $dirs[] = $file;
} else {
if ($file != "." & $file != "..") $files[] = $file;
}
}
}
closedir($handle);
reset($dirs);
sort($dirs);
reset($dirs);
reset($files);
sort($files);
reset($files);
$d = "0";
echo "<ul>Cartelle:\n";
while(list($key, $value) = each($dirs)) {
$d++;
echo "[*]<a href=\"{$value}\">{$value}/</a>\n";
}
echo "[/list]\n";
$f = "0";
echo "<ul>Files:\n";
while(list($key, $value) = each($files)) {
$f++;
$filemtime=date("m-d-Y H:i:s", filemtime($value));
$filesize=filesize($value);
echo "[*]<a href=\"{$value}\">{$value}</a> ({$filemtime} - {$filesize})\n";
}
echo "[/list]\n";
if (!$d) $d = "0";
if (!$f) $f = "0";
echo "Sono presenti {$d} cartelle e {$f} file(s).[/b]\n";
}
dir_list("PIPPO");
?>
che mi restituisce, a partire dalla cartella PIPPO, i nomi dei file e delle cartelle presenti, ordinati in ordine alfabetico. Inoltre, per i file, dovrebbe restituirmi la data di ultima modifica e la dimensione in byte. I file in totale sono due: PLUTO.xls e PINCOPALLINO.xls. Tutto ok per il primo file che trova, che si chiama PLUTO.xls, ma, per il successivo (PINCOPALLINO.xls) mi da i seguenti errori:
Warning: filemtime() [function.filemtime]: stat failed for PINCOPALLINO.xls in C:\www\test1.php on line 36
Warning: filesize() [function.filesize]: stat failed for PINCOPALLINO.xls in C:\www\test1.php on line 37
Le linee 36 e 37 sono, rispettivamente: $filemtime=date("m-d-Y H:i:s", filemtime($value)); e $filesize=filesize($value);
Come mai?
Qualcuno sa aiutarmi?