Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在用户控制器的laravel mailer中输入外部变量?_Php_Laravel - Fatal编程技术网

Php 如何在用户控制器的laravel mailer中输入外部变量?

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

我在laravel的用户控制器中有一个功能,允许用户在表单中输入姓名和电子邮件,并向管理员发送电子邮件。但是当我尝试在MailTo函数中调用包含它们的变量时,它会给出错误。这是我的密码:

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我试图找到一种解决方法,但无法做到,这就是我为什么把它贴在这里的原因