php - 在包含大量文件的文件夹中匹配文件名的更快方法

标签 php file pattern-matching

我正在使用这个 readdir 在文件夹中查找文件

$handler = opendir($folder);

while ($file = readdir($handler)) {

  if ($file != "." && $file != ".." && substr($file,0,7) == '98888000') {
    print $file. "<br />";
  }

}

但由于我的文件夹中有大量文件,因此需要几分钟才能完成请求:我怎样才能加快速度?
考虑我在 PHP5 + IIS 上。

我什至尝试过 glob()

foreach (glob($folder.98888000."*.pdf") as $filename) {
    echo "$filename size " . filesize($filename) . "\n";
}

但它什么也没返回。

最佳答案

glob呢?可能是?它找到与模式匹配的文件:

glob('98888000*')

可能有用。

如果您需要 opendirreaddir,那么您可能想看看 fnmatch .

关于php - 在包含大量文件的文件夹中匹配文件名的更快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6966623/

相关文章:

android.util.Patterns.EMAIL_ADDRESS 正在验证无效的电子邮件

java - 在Java代码中搜索某个字符串并替换它

python - 查找一定范围内有间隙的子列表

php - mysql 组排序

php - IIS 本地主机网站和网站管理员电子邮件

php - php 中 sleep() 函数的替代方案

c - Linux 中的文件洞和共享内存?

javascript - 尽管使用 Onsubmit 确认,HTML 表单仍然设置 PHP $_POST[]

javascript - 什么是 JavaScript FileReader 以及它可以在哪里使用?

ruby - 将 ruby​​ 循环到文本文件