Laravel Mail :: raw自定义变量

时间:2019-02-02 13:37:02

标签: php laravel

我有这个代码段,它使用我在env中设置的mail gun API发送电子邮件。全部发送,但是我现在想从用户那里选择变量,并根据输入设置其他一些信息

$name       =  $request->name;
$name2      =  'hello';
$email      =  $request->email;
$message    =  $request->message;

Mail::raw($message, function($message)
{
    $message->from('hello@hello.com', 'In-app Correspondence By -- ')->subject('Welcome!');
    $message->to('pr@example.com')->cc('me@gmail.com');
});

问题是当我放置$message->to($email)->cc('me@gmail.com');时出现内部服务器错误,但是上面的代码运行正常。

该电子邮件很好,但我检查了一下。我还想回复邮件并插入$ email变量。到目前为止,回复甚至在主题上放置$ email都导致内部服务器错误。

可能是问题所在。

1 个答案:

答案 0 :(得分:3)

要在PHP中将变量传递给闭包时,必须使用use关键字。所以试试这个:

$name       =  $request->name;
$name2      =  'hello';
$email      =  $request->email;
$message    =  $request->message;


Mail::raw($message, function($message) use ($email)
{
    $message->from('hello@hello.com', 'In-app Correspondence By -- ')->subject('Welcome!');

    $message->to($email)->cc('me@gmail.com');
});