如何通过使用PHP 5.6中的glob函数查找和删除文件

时间:2018-07-17 10:20:19

标签: php regex

我想搜索一个文件名中带有圆点的文件。例如.34234fdf.ico。如何创建一个正则表达式来为我查找所有在文件名中带有点扩展名并带有图标扩展名的文件?这是我的代码:

<?php

    $filepath = recursiveScan('/public_html');

    function recursiveScan($dir) {
        $tree = glob(rtrim($dir, '/') . '/.*');
        if (is_array($tree)) {
            foreach($tree as $file) {
                if (is_dir($file)) {
                    //echo $file . '<br/>';
                    recursiveScan($file);
                } elseif (is_file($file)) {
                 if (preg_match(".\d\d\d\d\d\d\d\d.ico", $file )) {
                      echo $file . '<br/>';
                       //unlink($file);
                   }           
                }
            }
        }
    }
    ?>

2 个答案:

答案 0 :(得分:1)

正则表达式为:^\..+\.ico

您无法工作,因为.代表每个字符。 \.匹配一个“点”

答案 1 :(得分:0)

如果点始终是第一个字符,则可以使用如下正则表达式:

^\..+\.ico