PHP Glob函数扫描目录

时间:2018-11-30 10:33:22

标签: php preg-replace rename glob

我有一个愚蠢的问题,但进行说明将有助于我调试正在编写的脚本。 我正在使用php glob()函数来扫描一些不同目录中的文件。我编写的脚本应该运行并扫描这些目录,然后如果给定的模式找到与文件夹内文件名匹配的匹配项,则函数将批量重命名这些文件。我的问题是,我需要在文件重命名后重新扫描文件夹,或者我只能使用一个var来扫描文件,然后重命名它们以避免重新扫描目录?

以下是代码示例:

define('ADMIN_PATH', ABSPATH.'/admin');
// the files inside admin are prefixed with the admin_filename.php prefix
$admin_root_files = glob(ADMIN_PATH.'/*.php');  
// with this function I'm removing the prefix
function prefix_remover(array $files, $pattern, $replace){
    foreach($files as $_file){
        $prefix_replace = preg_replace("/{$pattern}/", "{$replace}", $_file);
        $unprefix_file = rename($_file, $prefix_replace);
    }
    return true;
} 

如果我两次调用了前缀删除器功能(我需要打开重命名的文件,然后在代码中批量替换前缀),则控制台将记录通常称为文件存在的php错误。我认为这与文件已重命名有关,但是我不确定。

0 个答案:

没有答案