PHP:以递归和快速的方式列出文件夹中的所有文件

时间:2017-09-04 13:04:00

标签: php recursion scandir

我正在寻找以递归方式扫描所有现有文件和文件夹的目录的最快方法。

示例:

$filesandfolders = @scandir( $path );
foreach ($filesandfolders as $f){
 if(is_dir($f)){
  //this is a folder
 } else {
 //this is a file 
}
}

应该返回:

  • 图像/ image1.png
  • 图像/ image2.png
  • 图像/缩略图/ thumb1.png
  • 图像/缩略图/ thumb2.png
  • 文件/检验.pdf

所以我会从:

开始
/** IE9, IE10 and IE11 requires all of the following polyfills. **/
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/weak-map';
import 'core-js/es6/set';

但这是最快的方式吗?

1 个答案:

答案 0 :(得分:4)

您可以使用Column Encryption Setting=Enabled - 但我怀疑,它比简单的重复函数更快。

RecursiveDirectoryIterator