【问题标题】:Why am I getting undefined variable errors in Laravel method?为什么我在 Laravel 方法中收到未定义的变量错误?
【发布时间】:2017-12-04 08:41:58
【问题描述】:

我在我的 PageController 中创建了一个 Laravel 方法,用于在发送表单数据时发送电子邮件,如下所示:

public function sendMessage(Request $request)
{

    $name = $request->input('name');
    $email = $request->input('email');
    $message_content = $request->input('message');

    // email message
    Mail::raw($message_content, function ($message) 
    {
        $message->from($email, $name);
        // $message->to(env('APP_ADMIN_EMAIL'));
        $message->to("myemail@mail.com");
        $message->subject('Website Message');
    });

    return "message sent";

}

但是当方法被调用时我得到这个错误:

ErrorException 未定义变量:电子邮件

谁能解释我做错了什么?

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    你需要将变量传递给闭包:

    Mail::raw($message_content, function ($message) use ($email, $name)
    {
        $message->from($email, $name);
        $message->to("myemail@mail.com");
        $message->subject('Website Message');
    });
    

    请参阅文档:https://secure.php.net/manual/en/functions.anonymous.php

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-17
      • 2014-04-23
      • 1970-01-01
      • 1970-01-01
      • 2015-04-23
      • 1970-01-01
      相关资源
      最近更新 更多