Page 1 sur 1

Ou placer un sort() ?

Posté : 29 nov. 2005, 23:23
par catz
Bonjour à tous.

Mon 1er post dans la rubrique php etait probablement mal expliqué, alors je tente une autre approche de manière plus comprehensive :D

Voila j'ai donc un script complet pour lister le contenu d'un repertoire (fichiers & sous repertoires), le tout avec création de page html automatique.
Le seul problème est que quand j'ajoute de nouveaux sous-repertoires, ceux ci sont placés à la fin de la page html, a la suite des autres, et non par ordre alphabetique.
Je cherche donc à placer un sort(), sauf que je n'ai guère d'idée sur l'endroit ou le placer :oops:

Voici le script :

Code : Tout sélectionner

//--------------------------------------- // Lecture recursive d'un dossier //--------------------------------------- function explorer($chemin, $recursif=FALSE) { $listeFichier = array(); $repertoire = opendir($chemin); while ($fichier = readdir($repertoire)) { if (($fichier != ".")&&($fichier != "..")) { if (is_dir($chemin."/".$fichier)&&($recursif)) { $listeFichier = array_merge($listeFichier, explorer($chemin."/".$fichier, $recursif)); } else { if (eregi(".JPG", $chemin."/".$fichier) OR eregi(".JPEG", $chemin."/".$fichier) OR eregi(".PNG", $chemin."/".$fichier) OR eregi(".GIF", $chemin."/".$fichier)) { $listeFichier[] = $chemin."/".$fichier; } } } } closeDir($repertoire); return $listeFichier; }
Vu que l'array est $listefichier, j'ai pensé que je pouvais inserer le sort avant le return $listeFichier soit

Code : Tout sélectionner

closeDir($repertoire); sort($listeFichier); return $listeFichier;
Ce qui n'a rien donné.
Sachant que pour moi, l'interet est surtout d'afficher les repertoires par ordre alphabetique (les fichiers, je m'en tape :D )

Merci de l'aide que vous pourrez m'apporter !

Posté : 30 nov. 2005, 00:30
par Truc
essaie de faire un sort() apres l'appel, tu devrais avoir un truc qui resemble a ceci:
$t=array();
$t=explorer('.', TRUE);
sort($t);