在邮件视图中发送变量

时间:2018-05-04 05:19:21

标签: laravel laravel-5.4

我目前正在处理我希望将变量发送到我的邮件视图的项目。我尝试了很多次,但它给了我错误。请告诉我我做错了什么

我的控制器代码

$data = array('to'=> $patientEmail, 'from'=>'nida.office123@gmail.com', 'sender_name'=>'Admin', 'receiver_name'=>$request->name, 'subject'=>'Appointment Cancellled', 'message'=> $request->cancelMessage);
Mail::Send(['html'=>"mail/cancelAppointmentmail"], $data, function($message) use ($data) {
    $message->to($data['to'], $data['receiver_name'])->subject($data['subject']);
    $message->from($data['from'], $data['sender_name']);
});

我的观点代码

<p> <?php echo $data['message']; ?></p>

3 个答案:

答案 0 :(得分:1)

在视图中使用Blade语法:

<p>{{ $message }}</p>

答案 1 :(得分:0)

Mail::send方法的第二个参数是可以在视图中使用的变量。值的关键是视图中变量的名称:

你的数组

$data = array(
    'to'=> $patientEmail,
    'from'=>'nida.office123@gmail.com',
    'sender_name'=>'Admin',
    'receiver_name'=>$request->name,
    'subject'=>'Appointment Cancellled',
    'message'=> $request->cancelMessage
);

将导致视图可以访问以下变量:

$to = $patientEmail;
$from = 'nida.office123@gmail.com';
$sender_name = 'Admin';
$receiver_name = $request->name;
$subject ='Appointment Cancellled';
$message = $request->cancelMessage;

所以你写的地方

<p><?php echo $data['message']; ?></p>

你应该写

<p><?php echo $message; ?></p>

或使用Blade语法:

<p>{{ $message }}</p>

我知道我迟到了,但是由于其他人没有提到问题的原因,我也想写下我的答案。

答案 2 :(得分:0)

试试这个:

<p>{{ $message }}</p>

如果你有html输入,那么:

<p>{!! $message !!}</p>