我有这个代码段,它使用我在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都导致内部服务器错误。
可能是问题所在。
答案 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');
});