我想在目录和子目录php中搜索文件和文件夹

时间:2015-06-01 09:25:45

标签: php

我想搜索目录或其所有子目录中的文件和文件夹。

我正在使用此代码:

  <?php
    $a = new RegexIterator(
    new RecursiveIteratorIterator(
        new RecursiveDirectoryIterator('files')
    ),
    '/Desi Indian/',
    RegexIterator::MATCH
   );

   foreach ($a as $v) {
    echo "$v\n"; //$v will be the filename
   }
?>

但问题是,就像文件名是&#39; Wayne&#39;如果搜索字符串是&#39; wayne&#39;,则它不会显示任何搜索结果。想法?

2 个答案:

答案 0 :(得分:1)

  

但是,问题是,像文件名是'Wayne'和搜索字符串   是'wayne',然后它不会显示任何搜索结果。

这听起来像是一个搜索不区分大小写的问题。正则表达式可以被赋予额外的处理标志,其中i用于手头的目的。因此,只需将您的模式替换为'/Desi Indian/i',您应该匹配文件名,而不管它们的情况如何。

您可能想要了解一下这些标志或修饰符的调用方式:http://php.net/manual/en/reference.pcre.pattern.modifiers.php

答案 1 :(得分:1)

使用

 '/YOURSEARCHSTRING/i'

i模式修饰符将匹配大写和小写字