PHP 获取目录文件夹并排序输出

$dir = "";//目录

if (is_dir($dir)) {
  if ($dh = opendir($dir)) {
    $i = 0;
    while (($file = readdir($dh)) !== false) {
      if ($file != "." && $file != ".." && is_dir($dir . "/" . $file)) {
        $files[$i]["name"] = $file;//获取文件名称
        //$files[$i]["time"] = date("Y-m-d H:i:s",filemtime($file));//获取文件最近修改日期
        //$files[$i]["size"] = round((filesize($file)/1024),2);//获取文件大小
        $i++;
      }
    }
  }
  closedir($dh);
  foreach($files as $k=>$v) {
    $name[$k] = $v['name'];
    //$time[$k] = $v['time'];
    //$size[$k] = $v['size'];
  }
  array_multisort($name,SORT_DESC,SORT_STRING, $files);//按名字排序
  //array_multisort($time,SORT_DESC,SORT_STRING, $files);//按时间排序
  //array_multisort($size,SORT_DESC,SORT_NUMERIC, $files);//按大小排序

  $i = 0;
  $total = count($files);
  while ($i < $total) {
    $filename = $files[$i]['name'];
    //$filename = $files[$i]['time'].' - '.$files[$i]['name'].' - '.$files[$i]['size'];
    $i++;

    echo $filename;
  }
}

发布于 2023 年 2 月 4 日

更新于 2024 年 3 月 2 日