note 16388 deleted from ref.filesystem by philip
| From: | philip@php.net | Date: | Sun, 13 Oct 2002 21:53:51 +0000 |
| Subject: | note 16388 deleted from ref.filesystem by philip | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-38031@lists.php.net to get a copy of this message | ||
Il me semblait l'avoir deja poste mais apparemment non, ou alors je ne trouve plus ou, donc
pour lister seulement certains fichiers dans un repertoire, voila une petite fonction utile:
function listFiles($dir , $type){
if (strlen($type) == 0) $type = "all";
$x = 0;
if(is_dir($dir))
{
$thisdir = dir($dir);
while($entry=$thisdir->read())
{if(($entry!='.')&&($entry!='..')) {
if ($type == "all") {$result[$x] = $entry; $x++; next;}
$isFile = is_file("$dir$entry"); $isDir = is_dir("$dir$entry");
if (($type == "files") && ($isFile)) {$result[$x] = $entry; $x++; next;}
if (($type == "dir") && ($isDir)) {$result[$x] = $entry; $x++; next;}
$temp = explode(".", $entry);
if (($type == "noext") && (strlen($temp[count($temp) - 1]) == 0))
{$result[$x] = $entry; $x++;next;}
if (($isFile) && (strtolower($type) == strtolower($temp[count($temp) - 1])))
{$result[$x] = $entry; $x++;next;}
} }
}
return $result;
}
donc on l'appelle en faisant
listFiles("/mon/rep/er/toire/", "gif")
so you'll have only .gif files
Si vous voulez tous les fichiers et repertoires, mettez "all" au lieu de "gif";
pour uniquement les repertoires, mettez "dir" au lieu de "gif"; pour avoir
uniquement les fichier sans extension genre "README", tapez "noext" au lieu de
"gif"; et finalement pour avoir tous les fichiers (mais pas les repertoires), tapez
"files" au lieu de "gif".
Notez qu'un fichier genre monfichier.doc.gif sera reconnu en tant que .gif, pas en .doc.