我在论坛上看到一个类似的题目解决了,但是在我这里没有成功。我是哪里做错了?
查看
<input type="file" class="" name="document">
发送
Mail::send([], [], function ($message) use ($request) {
$message->to($request->to);
$message->subject($request->subject);
$message->setBody($request->message);
$data = $request->document;
$message->attach($data['document']->getRealPath(), array(
'as' => $data['document']->getClientOriginalName(),
'mime' => $data['document']->getMimeType()));
我想用这种方式发送附件,但是没有。我需要先上传再发送吗?
关于请求中的文件, 在laravel的官方文档中有一整节.
https:/laravel.comdocs7.xrequests#files
https:/laravel.comapi7.xIlluminateHttpUploadedFile.html。
所以,根据上面的文档,你上传的文件会在处理请求时(临时)保存,你不需要自己保存。
$document_path = $request->document->path();
$message->attach($document_path, array(
'as' => $request->document->getClientOriginalName(),
'mime' => $request->document->getMimeType())
);