Php 如何在用户控制器的laravel mailer中输入外部变量?
我在laravel的用户控制器中有一个功能,允许用户在表单中输入姓名和电子邮件,并向管理员发送电子邮件。但是当我尝试在MailTo函数中调用包含它们的变量时,它会给出错误。这是我的密码:Php 如何在用户控制器的laravel mailer中输入外部变量?,php,laravel,Php,Laravel,我在laravel的用户控制器中有一个功能,允许用户在表单中输入姓名和电子邮件,并向管理员发送电子邮件。但是当我尝试在MailTo函数中调用包含它们的变量时,它会给出错误。这是我的密码: public function send_email_contact_us(){ $name = Input::get('name'); $email = Input::get('email'); $message_contact = Input::get('me
public function send_email_contact_us(){
$name = Input::get('name');
$email = Input::get('email');
$message_contact = Input::get('message');
$sender_email = Input::get('email');
$sender_name = Input::get('name');
$validator = Validator::make(
array(
'name' => $name,
'email' => $email
), array(
'name' => 'required',
'email' => 'required',
)
);
if ($validator->fails())
{
$error_messages = $validator->messages()->all();
return Redirect::back()->with('flash_errors',"Message not sent, please try again.");
}
else
{
$data=array("name"=>$name,"email"=>$email,"message_contact"=>$message_contact);
Mail::send('emails.contactus',$data, function($message)
{
$message->from($sender_email, $sender_name); // THIS GIVES ERROR
$message->to("admin@admin.com")->subject('Contact Us');
});
return Redirect::back()->with('flash_success',"Message sent successfully.");
}
}
如果您有任何帮助,我们将不胜感激。请更改此选项
Mail::send('emails.contactus',$data, function($message) use($sender_email,$sender_name)
{
$message->from($sender_email, $sender_name);
$message->to("admin@admin.com")->subject('Contact Us');
});
要在闭包中使用外部变量,您必须使用use关键字将变量导入闭包中
它会产生错误
您是否将其留给我们?猜测错误?那么你面临的问题是什么?你的问题是什么?什么不起作用?你会期待什么?实际发生了什么?您看到了哪些错误?请提供详细信息。@u\u mulder我试图找到一种解决方法,但无法做到,这就是我为什么把它贴在这里的原因