我有以下文件在我的目录- case-1.gz , case-2.gz, ........ , case-12.gz, index.xml
。下面是我按字母顺序排序文件的代码-
$dir = '/var/www/html/es/a';
$files = array_diff(scandir($dir,1), array('..', '.', 'index.xml'));
print_r($files);
输出如下-
Array
(
[1] => case-9.gz
[2] => case-8.gz
[3] => case-7.gz
[4] => case-6.gz
[5] => case-4.gz
[6] => case-3.gz
[7] => case-2.gz
[8] => case-12.gz
[9] => case-11.gz
[10] => case-10.gz
[11] => case-1.gz
)
我需要一个模式为case-12.gz, case-11.gz, case-10.gz, case-8.gz, ........ , case-1.gz
也在我的上面的输出偏移量0数组是缺失的,因为我需要访问数组中最顶端排序的文件。
您需要使用natsort与array_reverse作为
natsort($arr);
$array = array_reverse($arr);
print_r($array);
小提琴
从文档(和natsort
):
<?php
natsort($files);
print_r($files);
?>