Php 如何使用Mail::send发送包含多个字段条目的电子邮件
我目前正在为大学做最后一年的项目。我目前可以使用“msg”=>$request->message发送显示消息的电子邮件。我想知道是否有一种方法可以发送包含多个字段条目的电子邮件,例如:Php 如何使用Mail::send发送包含多个字段条目的电子邮件,php,laravel,email,Php,Laravel,Email,我目前正在为大学做最后一年的项目。我目前可以使用“msg”=>$request->message发送显示消息的电子邮件。我想知道是否有一种方法可以发送包含多个字段条目的电子邮件,例如: 'msg' => $request->message, $request->ornamentation 我不知道如何写这个,上面没有工作。谢谢 我在下面附上了我的控制器文件和我的html ContactMessageController <?php na
'msg' => $request->message, $request->ornamentation
我不知道如何写这个,上面没有工作。谢谢
我在下面附上了我的控制器文件和我的html
ContactMessageController
<?php
namespace App\Http\Controllers;
use Mail;
use Illuminate\Http\Request;
class ContactMessageController extends Controller
{
public function create(){
return view('contact');
}
public function store(Request $request)
{
$this->validate($request,[
'name' => 'required',
'email' => 'required|email',
'message' => 'required'
]);
Mail::send('emails.contact-message', [
'msg' => $request->message
], function ($mail) use($request) {
$mail->from($request->email, $request->name);
$mail->to('flannery-n@ulster.ac.uk')->subject('Contact message');
});
return redirect()->back()->with('flash_message', 'Thank you for your message');
}
}
我猜您正在将$msg
变量内容输出到您的电子邮件模板,执行如下操作:
{{ $msg }}
因此,在这种情况下,您可以以相同的方式添加额外的请求属性
首先,确保它们已传递到模板:
Mail::send('emails.contact-message', [
'msg' => $request->message,
'ornamentation' => $request->ornamentation,
// And any other attribute you want to pass along
], function ($mail) use ($request) {
$mail->from($request->email, $request->name);
$mail->to('flannery-n@ulster.ac.uk')->subject('Contact message');
});
然后,您可以将属性输出到模板,方法与使用$msg
相同:
{{ $ornamentation }}
需要明确的是,模板中可用的变量与传递的数组的键具有相同的名称。例如,如果您有一个数组,例如:
[
'foo' => $request->message,
'bar' => $request->ornamentation,
]
模板中的变量为:
{{ $foo }}
及
{{ $foo }}
{{ $bar }}