我阵列表演的名字是这样的:PHP数组排序两次
$shows = array('morning_show_15_02_2014_part2.mp3',
'morning_show_15_02_2014_part1.mp3',
'morning_show_14_02_2014_part2.mp3',
'morning_show_14_02_2014_part1.mp3',
'morning_show_13_02_2014_part2.mp3',
'morning_show_13_02_2014_part1.mp3');
所以名单看起来像: morning_show_15_02_2014_part2.mp3 morning_show_15_02_2014_part1.mp3 morning_show_14_02_2014_part2.mp3 morning_show_14_02_2014_part1.mp3 morning_show_13_02_2014_part2.mp3 morning_show_13_02_2014_part1.mp3
这是我所得到的,当我循环的目录。
不过这个名单应该是这样的: morning_show_15_02_2014_part1.mp3 morning_show_15_02_2014_part2.mp3 morning_show_14_02_2014_part1.mp3 morning_show_14_02_2014_part2.mp3 morning_show_13_02_2014_part1.mp3 morning_show_13_02_2014_part2.mp3
还是按日期排序,但是第1部分是第一,然后是第2部分
我怎么能得到这个列表进入正确的顺序?
谢谢你的帮助!
你的问题是,你想通过日期降序和部分升序来订购。唯一的机会就是在解析文件名的自定义排序函数中做到这一点。看看[usort](http://php.net/manual/en/function.usort.php) – SBH 2014-09-19 10:45:35