按数字而不是按字母顺序组织列表

时间:2017-04-22 02:13:07

标签: php sorting glob

我有一堆像这样的文件夹:

Letter#1
Letter#10
Letter#2
Letter#3

如何重新订购它们,以便当我使用glob阅读它时,我得到:

Letter#1
Letter#2
Letter#3
Letter#10

1 个答案:

答案 0 :(得分:1)

有许多方法可以让它订购。

  1. 您可以删除字符串Letter#,然后按此命令。
  2. $folders = ['Letter#1', 'Letter#2', 'Letter#3', 'Letter#10']; 
    $prefix = 'Letter#';
    
    foreach ($folders as $key => $folder) {
        $folders[$key] = ltrim($folder, $prefix); 
    }
    
    $folder = sort($folders, SORT_NUMERIC);
    
    foreach ($folders as $key => $folder) {
        $folders[$key] = $prefix . $folder; 
    }
    
    print_r($folders);