如何使用laravel 5从一个文件夹中复制整个目录

时间:2017-06-21 00:59:38

标签: laravel laravel-5 copy

可能它很容易,但我无法在谷歌或这里找到任何正确的答案!!

我确实使用了

\File::copyDirectory('public/' . $token . '/cover/', $folderName . '/cover/');

但是没有什么不同!!

This is where I found above solution.

您知道如何使用laravel 5.4将整个目录从一个文件夹复制到另一个文件夹吗?

提前致谢

5 个答案:

答案 0 :(得分:6)

一年多以后:)

使用路径助手功能https://laravel.com/docs/5.6/helpers

\File::copyDirectory( public_path . 'to/the/app', resource_path('to/the/app'));

答案 1 :(得分:1)

只需执行以下操作:

   /* Move test images from public folder to storage folder */
    $source = "source/path";
    $destination = "public/files";

    File::copyDirectory(base_path($source), base_path($destination));

答案 2 :(得分:0)

我们可以在laravel 5.8中使用文件外观进行如下操作:

use Illuminate\Support\Facades\File;  

File::copyDirectory(__DIR__.'/form-directory', resource_path('to-directory'));

希望,这会有所帮助。

答案 3 :(得分:0)

我使用了 Storage facades 并且效果很好

config/filesystems.php

'disks' => [
    'local' => [
        'driver' => 'local',
        'root' => public_path(),
    ],
     ...
]

将所有文件从 public/seed_images/ 复制到 public/images/

app/Http/Controllers/HomeController.php

use Illuminate\Support\Facades\Storage;
$fromFiles = Storage::allFiles('seed_images');
for ($i=0; $i < count($fromFiles) ; $i++) {
    $toFile = str_replace("seed_images","images",$fromFiles[$i]);
    Storage::copy( $fromFiles[$i], $toFile );
}

答案 4 :(得分:-2)

尝试使用mix.copy()方法。

mix.copy('public/' . $token . '/cover/', $folderName . '/cover/');

阅读详情:https://laravel.com/docs/5.4/mix#copying-files-and-directories