如何在Laravel中将文件与“请求”合并?

时间:2019-08-20 03:15:31

标签: php laravel

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

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

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

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

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

而且这样的方法也是行不通的。

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

2 个答案:

答案 0 :(得分:0)

尝试这个例子

$data = $request->except('exp');
$data['exp'] = $myVar;

// now use your data array
MyModel::create($data);

答案 1 :(得分:0)

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

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