无法在laravel 5.2中发送电子邮件

我正在尝试用laravel 5.2发送电子邮件。 这是我第一次在laravel发送邮件。 但它是抛出这个错误

这是错误

Swift_TransportException in AbstractSmtpTransport.php line 162: Cannot send message without a sender address

这是我发送电子邮件的代码

Route::get('test',function(){
    $message  = "hello";
    Mail::send('welcome', ['key' => 'value'], function($message)
    {

       $message->to('iljimae.ic@gmail.com', 'John Smith')->subject('Welcome!');
    });
});

这是我在env文件中的电子邮件设置

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=iljimae.ic@gmail.com
MAIL_PASSWORD=xxxxxx

MAIL_ENCRYPTION=null

我的欢迎视图只有一个消息“Hello world”

我已经在Gmail设置中为我的电子邮件配置了不太安全的应用程序设置。 那么请问我的代码有什么问题? 为什么会抛出这个错误?


错误消息Cannot send message without a sender address已清除。 你只需要添加from到消息:

Route::get('test',function(){
    $message  = "hello";
    Mail::send('welcome', ['key' => 'value'], function($message)
    {

       $message->from('myEmail@test.com')
           ->to('iljimae.ic@gmail.com', 'John Smith')
           ->subject('Welcome!');
    });
});

为了能够发送邮件,您必须将.env文件中的邮件加密更改为:

MAIL_ENCRYPTION=tls

您的$ message消息链包含“To”和“Subject”字段,但缺少“From”字段。

只需将 - >从()添加到链中即可:

$message->to('iljimae.ic@gmail.com', 'John Smith')
    ->subject('Welcome!')
    ->from(Config::get('mail.from.address'), Config::get('mail.from.name'));

假设'from'在你的config / mail.php文件中(它可能引用或不引用环境变量)设置。 如果不是,您可以直接指定它:

$message->to('iljimae.ic@gmail.com', 'John Smith')
    ->subject('Welcome!')
    ->from('iljimae.ic@gmail.com', 'John Smith');
链接地址: http://www.djcxy.com/p/69335.html

上一篇: Cannot send email in laravel 5.2

下一篇: PHP MAILER: Root User replace From Information