【发布时间】: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
我想将文件复制到 laravel 中的文件夹。 当我复制文件时显示此错误
copy() 函数的第二个参数不能是目录
我的代码:
$success = \File::copy(base_path('test.text'),base_path('public/'));
【问题讨论】:
标签: php laravel laravel-5 laravel-5.2 file-copying
错误说明了它的含义。如果您阅读有关 copy() 函数的文档,它会声明您必须从文件复制到新文件。例如将内容从 .txt 文件复制到另一个 .txt 文件。
所以只需在公共部分之后添加 test.text ,它将创建一个新文件或覆盖现有文件。
$success = \File::copy(base_path('test.text'),base_path('public/test.text'));
【讨论】:
您可以使用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
【讨论】: