使用 PHP 递归函数实现文件或目录的复制(递归.函数.复制.文件.目录...)

wufei1232024-08-23PHP36

php 中可以通过递归函数来复制文件或目录,步骤如下:创建目标目录,如果不存在。对于源目录中的每个项,如果为目录则递归复制,否则直接复制。使用 force=true 参数可覆盖现有文件。

使用 PHP 递归函数实现文件或目录的复制

使用 PHP 递归函数实现文件或目录的复制

在 PHP 中,我们可以使用递归函数来实现文件或目录的复制。以下是如何实现的代码:

function copyDirectory($source, $destination) {
    if (! is_dir($destination)) {
        mkdir($destination, 0777, true);
    }

    $files = scandir($source);

    foreach ($files as $file) {
        if ($file == '.' or $file == '..') {
            continue;
        }

        if (is_dir($source . '/' . $file)) {
            copyDirectory($source . '/' . $file, $destination . '/' . $file);
        } else {
            copy($source . '/' . $file, $destination . '/' . $file);
        }
    }
}

实战案例

以下是如何使用该函数复制一个目录:

$sourceDirectory = '/path/to/source';
$destinationDirectory = '/path/to/destination';

copyDirectory($sourceDirectory, $destinationDirectory);

此函数将复制 sourceDirectory 中的所有文件和子目录到 destinationDirectory。

请注意,此函数不会覆盖现有文件。如果您希望覆盖现有文件,可以使用 force=true 参数:

copyDirectory($sourceDirectory, $destinationDirectory, true);

以上就是使用 PHP 递归函数实现文件或目录的复制的详细内容,更多请关注知识资源分享宝库其它相关文章!

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。