温馨提示×

用PHP实现递归的文件和目录复制

PHP
小樊
98
2024-04-26 20:27:48
栏目: 编程语言

可以使用以下PHP代码来实现递归的文件和目录复制:

function copyDirectory($source, $destination){
    // 如果目标目录不存在,则创建
    if(!is_dir($destination)){
        mkdir($destination, 0777, true);
    }

    // 打开源目录并遍历其中的文件和子目录
    $dir = opendir($source);
    while(false !== ($file = readdir($dir))){
        if (($file != '.') && ($file != '..')){
            $src = $source . '/' . $file;
            $dest = $destination . '/' . $file;

            if (is_dir($src)){
                // 递归复制子目录
                copyDirectory($src, $dest);
            } else {
                // 复制文件
                copy($src, $dest);
            }
        }
    }
    closedir($dir);
}

// 调用函数进行递归复制
copyDirectory('/path/to/source', '/path/to/destination');

在上面的代码中,copyDirectory函数用于递归地复制源目录中的所有文件和子目录到目标目录。首先检查目标目录是否存在,如果不存在则创建该目录。然后遍历源目录中的所有文件和子目录,如果是子目录则递归调用copyDirectory函数进行复制,如果是文件则使用copy函数进行复制。

请将/path/to/source/path/to/destination替换为实际的源目录和目标目录路径。

0