需要PHP来排序文件ALPHA和NUMERIC

时间:2010-07-21 17:14:49

标签: php arrays sorting

我有一些PHP代码可以从目录中获取文件列表,并将它们放入一个数组中。

我可以按字母顺序对数组进行排序,文件列表如下所示:

(Ex A)

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

我希望PHP按字母顺序排序,但也要考虑使用正确的数字组件排序文件,例如:

(Ex B)

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

我不知道这是什么类型的排序,但我注意到Windows按第一个列表排序文件(A),Macs按更高级/更智能的底部列表排序文件(B)

我想避免添加0来强制正确的排序顺序:

(Ex C)

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

有没有人知道我如何让PHP以例子(B)的逻辑方式对我的数组进行排序?

1 个答案:

答案 0 :(得分:3)

使用natsort(),或者如果不适合,请在函数中定义自己的逻辑并使用{​​{1}}。这个词是'自然分类'。