如何在 laravel 5 控制器中复制文件
How to copy files in laravel 5 controller
我想将文件复制到 laravel 中的文件夹。
当我复制文件时显示这个错误
The second argument to copy() function cannot be a directory
我的代码:
$success = \File::copy(base_path('test.text'),base_path('public/'));
错误说明了它的含义。如果您阅读有关 copy() 函数的文档,它会声明您必须从一个文件复制到一个新文件。例如,将内容从 .txt 文件复制到 another.txt 文件。
因此只需在 public 部分后添加 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
我想将文件复制到 laravel 中的文件夹。 当我复制文件时显示这个错误
The second argument to copy() function cannot be a directory
我的代码:
$success = \File::copy(base_path('test.text'),base_path('public/'));
错误说明了它的含义。如果您阅读有关 copy() 函数的文档,它会声明您必须从一个文件复制到一个新文件。例如,将内容从 .txt 文件复制到 another.txt 文件。
因此只需在 public 部分后添加 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