提问者:小点点

Codeigniter排除文件和文件夹


我在stackoverflow上发现了一些代码。 当您排除一个文件夹时,它的工作非常完美。 但我想排除特定的文件夹和文件。 但也不排除。 你能帮帮我吗?

$this->load->library('zip');
$data = array_diff(scandir(FCPATH), array('..', '.','backups'));
    // 'backups' folder will be excluded here with '.' and '..'

foreach($data as $d) {

    $path = FCPATH.$d;

    if(is_dir($path))
        $this->zip->read_dir($path, false);

    if(is_file($path))
        $this->zip->read_file($path, false);
}

$this->zip->archive(FCPATH.'backups/'.date('Y-m-d-His').'.zip'); 

此代码仅排除备份文件夹。 我要像这样排除

例如:

$data = array_diff(scandir(FCPATH), array('..', '.','backups', 'config.php', 'database.php', 'system'));

有可能吗?


共1个答案

匿名用户

是的,有可能。 第二个参数中在array_diff()函数的第一个参数中不可用的项将不会出现在结果中。

您可以在这里找到该函数的文档:https://www.php.net/manual/en/function.array-diff.php