2010-07-21 5 views
0

J'ai un peu de code PHP qui saisit une liste de fichiers d'un répertoire, et les met dans un tableau.Besoin de PHP pour trier les fichiers ALPHA et NUMERIC

Je peux trier le tableau par ordre alphabétique, et la liste des fichiers vient comme ceci:

(Ex A)

CC 2010.pdf 
CCP 2010.PDF 
RS 1 2010.PDF 
RS 15 2010.PDF 
RS 2 2010.PDF 

Je veux PHP pour trier par ordre alphabétique, mais aussi prendre en fichiers de tri considération avec pavé numérique correctement les composants, tels que:

(Ex B)

CC 2010.pdf 
CCP 2010.PDF 
RS 1 2010.PDF 
RS 2 2010.PDF 
RS 15 2010.PDF 

Je ne sais pas quel type de tri cela appelle, mais je remarque que Windows trie les fichiers par la première liste (A), et que les Mac trient les fichiers par la liste inférieure plus avancée/plus intelligente (B)

I veulent éviter d'avoir à ajouter des 0 pour forcer l'ordre de tri correct:

(Ex C)

CC 2010.pdf 
CCP 2010.PDF 
RS 01 2010.PDF 
RS 02 2010.PDF 
RS 15 2010.PDF 

Est-ce que quelqu'un sait comment je peux obtenir PHP pour trier mon tableau de la façon logique de l'exemple (B) ?

Répondre

3

Utilisez soit natsort(), soit, si cela ne vous convient pas, définissez votre propre logique dans une fonction et utilisez usort(). Le terme est «tri naturel».

+0

natsort a travaillé, merci – samJL

Questions connexes