使用表单和多个地址在Laravel中发送电子邮件

时间:2016-08-26 15:02:50

标签: php laravel email laravel-5.1

我的重点是发送一封电子邮件,其中包含您可以插入的表单: 名称, 姓, 从(任何电子邮件), 到(我的电子邮件)。 首先,我尝试使用谷歌配置(请参阅互联网),但电子邮件不发送,结果是一个空白页面。 我必须只配置services.php和.env?

1 个答案:

答案 0 :(得分:1)

没有什么太复杂的,你读过the docs吗?

首先,您需要在config/mail.php'driver')或.envMAIL_DRIVER)中设置配置。

您可以开始将其设置为sendmail,但是一旦上线,请考虑使用smtp或mailgun等服务。

第二步是创建视图,例如app/resources/views/emails(后面的代码段将使用app/resources/views/emails/reminder.blade.php),但您可以根据自己的喜好命名。

然后在您的控制器中,您所要做的只是:

$email = 'email@foo.bar';
$name  = 'John Doe';

Mail::send('emails.reminder', [], function ($m) {
    $m->from('hello@app.com', 'Your Application');
    $m->to($email, $name)->subject('Your Reminder!');
});

作为第二个参数传递的数组可能包含您可能想要传递给视图的其他数据。

//编辑 对不起,我不明白你打算用gmail。

在这种情况下,您可能需要配置smtp设置。例如,如果您使用.env进行设置,则应该反映出以下内容:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=myemail@gmail.com
MAIL_PASSWORD=mybeautifulpasswordthatnooneknows
MAIL_ENCRYPTION=tls