$files = glob(__DIR__);
$files = opendir(__DIR__); while($element = readdir($dir)) {} closedir($files);
$files = new DirectoryIterator(__DIR__);
Un suffixe optionnel à omettre dans le nom de fichier retourné.
Ce que j'ai remarqué c'est le readdir, méthode obsoléte.
<?php $d = opendir('ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/9.0-RELEASE/'); if ($d !== false) { while (false !($f readdir($d))) { echo $f, PHP_EOL; } closedir($d); } ?>
Note: Cette fonction ne fonctionne pas avec les fichiers distants, car le fichier utilisé doit être accessible sur le système de fichiers local.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionNe pas afficher l'extension d'un fichier.
Il apparait qu'il faut lister un dossier sur un système local
Il existe glob() et encore mieux dans la SPL, il y a SplFileInfo qui dispose de la méthode getBaseName().
J'affirme donc qu'utiliser le trio opendir/readdir/closedir pour récupérer le nom d'un fichier sans son extension est obsolète.
Donc je suis désolé TychoBrae mais vous ne prouvez rien du tout. Vous êtes hors-sujet. Ce qui est plutôt original comme argumentation.
Car avec votre exemple, shazaam, temps d'execution sur un serveur free.fr : plus l'infini (cela ne vous rappelle rien ?).
-> time php dir.php MPlayer awstats lost+found mirrors nzb pub stats tmp real 0m0.255s user 0m0.032s sys 0m0.028s
Nice try, essaye encore. Sérieux, pourquoi veux-tu que les serveurs de free soient différents des autres ?
Je ne confonds rien du tout, par contre la seul chose que je peux vous concéder c'est que ce mot n'est pas le plus judicieux.
Mais vous avez entièrement raison continuons à utiliser opendir et tout le reste c'est tellement plus pratique et simple à mettre en oeuvre pour récupérer un malheureux nom de fichier. C'est une bonne idée à encourager car il n'existe pas mieux à l'heure actuelle.
Pour avoir hébergé plusieurs sites sans prétentions sur leurs serveurs et ce pendant quelques années. Avec votre exemple les sources. Et surement suite aussi à ce sujet, dont voici l'explication. Mais à part ça rien du tout.
NB : Je fais l'effort de vous tutoyer hein ce n'est pas pour rien, je ne suis pas votre 'pote'.