Ranger un tableau dans l'ordre alphabétique [PHP] - PHP - Programmation
Marsh Posté le 22-07-2003 à 16:10:15
vire la condition de ton while et regarde ce qu'il y a dans la premiere case de ton tableau tu vas vite comprendre ...
Marsh Posté le 22-07-2003 à 16:11:59
un élément est vide donc il ce retrouve en début du tableau une fois trié.
Quand on commence a l'indice 1 (pour sauter l'élément vide),on voit bien le tableau trié.
Les léléments commencant par un espace sont avant les autres.
Marsh Posté le 22-07-2003 à 16:18:23
c vrai,
au fait, vous connaissiez ça ?
Code :
|
ça affiche tout le tableau d'un coup !
je viens de le trouver...
Marsh Posté le 22-07-2003 à 16:22:03
donc voilà :
c plus long mais plus propre...
Code :
|
Marsh Posté le 22-07-2003 à 16:44:04
Perso j'ai plus tendance à faire des trucs comme ça:
Code :
|
Comme ça tu peux vraiment faire ta fonction du tri exactement comme tu veux pour ton tableau.
Marsh Posté le 22-07-2003 à 17:02:12
sire de botcor a écrit : donc voilà :
|
Ou plus court :
Code :
|
Voire carément
Code :
|
Marsh Posté le 22-07-2003 à 17:06:11
omega2 a écrit : Ou plus court :
|
Clairement et nettement l'utilisation du foreach, comme ca pas besoin de se peter les burnes pour savoir l'indice de départ. Bravo, j'y avait pas pense
Marsh Posté le 22-07-2003 à 17:09:42
ouaaais mais ça résoud pas le probleme de sire de botcor puisque si il y a des elements vides dans le tableau avec votre méthode ils sortent quand même... Donc?
Marsh Posté le 22-07-2003 à 17:13:48
Anapajari a écrit : ouaaais mais ça résoud pas le probleme de sire de botcor puisque si il y a des elements vides dans le tableau avec votre méthode ils sortent quand même... Donc? |
Donc il suffit de rajouter un simple if dans la boucle.
Marsh Posté le 25-07-2003 à 14:43:26
Pb supplémentaire :
lorsqu'il y a des 1ères lettres en majuscules dans la liste, elles sont automatiquement rangées avant les éléments en minuscule de la liste !!
comment peut-on éviter ça ?
Marsh Posté le 25-07-2003 à 14:45:25
je vais répondre tout de suite :
natcasesort() plutôt que sort()
Marsh Posté le 25-07-2003 à 14:55:12
rectification : natcasesort() range les éléments du tableau provisoirement !
les numéros de cases ne se rangent pas dans l'ordre...
genre :
[0] A
[1] c
[2] B
donnerait :
[0] A
[2] B
[1] c
à la place de :
[0] A
[1] B
[2] c
Comment contrer ça ??
Marsh Posté le 25-07-2003 à 15:10:42
il y a ça qui est presque parfait
(presque parce que certains éléments ne sont pas à leur place):
Code :
|
Marsh Posté le 25-07-2003 à 15:33:22
voilà, comme ça c parfait !
Code :
|
Marsh Posté le 22-07-2003 à 16:04:44
g trouvé la fonction sort qui le fait,
alors g essayé ça :
mais ça ne fonctionne pas !
où kcéti ksa coince ?
---------------
«Ceux qui croient que les peuples suivront leurs intérêts et non leurs passions n’ont rien compris au XXe siècle.» © Raymond Aron