PHP: Classer les fichiers par extension

Fermé
GarryPine - 10 mars 2008 à 02:16
vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 - 14 mars 2008 à 08:01
Bonjour,

Je travaille sur la création d'un petit script php pour améliorer l'affichage de mon FTP. Tout est assez simple par rapport à mon niveau mais je galère pour classer les fichiers par rapport à leur extensions.

$rep = opendir($path);
while($file = readdir($rep)){
$tb[] = "$file";
}
closedir($rep);
clearstatcache();
asort($tb);

reset($tb);
while(list($key,$val) = each($tb)){
$file_ext = strtolower(substr(strrchr($val,"."),1));


.... }

$path est le répertoire que je veux scanner. à partir de la, j'ai récupéré l'extension du fichier dans la variable $file_ext après pour l'affichage dans un tableau c'est fait et ça marche. En attendant de trouver comment classer par type de fichier j'ai mis un classement par ordre alphabétique comme vous l'aurez remarqué.

Quelqu'un peut il m'aider s'ilvouplé??

en vous remerciant par avance
A voir également:

3 réponses

vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 259
10 mars 2008 à 07:29
Si tu veux, tu peux inverser nom du fichier sans extension avec son extension donc tu aurais du avi.toto pour un fichier toto.avi et donc tu n'aurais plus qu'à faire un asort (ou un natcasesort) dessus, puis tu restaure le nom de base soit en l'ayant sauvegarder comme clé du tableau tab["toto.avi"]="avi.toto" soit en effectuant encore l'échange nom-extension.
De plus, la fonction glob pourrait être plus simple qu'un opendir, readdir, closedir
3
j'ai compris ce que tu veux que je fasse mais y a t il une commande spéciale ou je dois tout me taper ??
0
vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 259
14 mars 2008 à 08:01
je me souviens pas d'une commande particulière qui fait cela donc je pense que tu dois le faire.
0