【问题标题】:How to copy files in laravel 5 controller如何在 laravel 5 控制器中复制文件
【发布时间】:2016-09-14 13:15:58
【问题描述】:

我想将文件复制到 laravel 中的文件夹。 当我复制文件时显示此错误

copy() 函数的第二个参数不能是目录

我的代码:

$success = \File::copy(base_path('test.text'),base_path('public/'));

【问题讨论】:

    标签: php laravel laravel-5 laravel-5.2 file-copying


    【解决方案1】:

    错误说明了它的含义。如果您阅读有关 copy() 函数的文档,它会声明您必须从文件复制到新文件。例如将内容从 .txt 文件复制到另一个 .txt 文件。

    所以只需在公共部分之后添加 test.text ,它将创建一个新文件或覆盖现有文件。

    $success = \File::copy(base_path('test.text'),base_path('public/test.text'));
    

    【讨论】:

      【解决方案2】:

      您可以使用public_path() 函数获取public/ 文件夹的路径,您可以像这样复制该文件

      $destinationPath=public_path()."/UploadFolderName/FileName.ext";
      $success = \File::copy(base_path('test.text'),$destinationPath);
      

      现在question 是您的source file 在哪里?如果它已经在 public folder 中,那么您将获得该文件的完整路径。

      $sourceFilePath=public_path()."/SomeFolderName/FileName";
      $destinationPath=public_path()."//UploadFolderName/FileName.ext";
      $success = \File::copy($sourceFilePath,$destinationPath);
      

      编码愉快!!!

      编辑

      public_path()laravel 内置函数,它提供了public 文件夹的完整path。欲了解更多信息,请阅读此处:https://laravel.com/docs/5.2/helpers#method-public-path

      【讨论】:

        猜你喜欢
        • 2015-05-22
        • 2015-04-29
        • 2014-11-24
        • 1970-01-01
        • 1970-01-01
        • 2023-03-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多