首页 > 解决方案 > 如何在 Laravel 中将文件与“请求”合并?

问题描述

我的项目中有一个问题应该将文件与“请求”合并,我只是发现我们可以使用合并的功能来合并属性,但是我们如何在 laravel 中合并文件呢?非常感谢。

我们可以使用 'merge' 来合并一些属性

$request->merge([
            'ticket_id' => '123',
        ]);

但是如果我想合并一个文件?(我发现这种方式不可行,我无法从请求中接收文件)

$request->merge([
            'file' => fopen('xxx', 'r'),
        ]);

像这样的方式也不可行。

$request->files = fopen('xxx', '');

标签: phplaravel

解决方案


您需要创建一个新的 UploadedFile,然后将该文件添加到请求包中。

$fileAddress = storage_path().'/file.jpg';
$file = new UploadedFile($fileAddress, 'file');
$request->files->set('file', $file);

推荐阅读