【发布时间】:2017-01-03 07:18:39
【问题描述】:
我的重点是发送带有表单的电子邮件,您可以在其中插入: 姓名, 姓, 来自(任何电子邮件), 到(我的电子邮件)。 首先我尝试使用谷歌配置(见互联网),但电子邮件不发送,结果是一个空白页。 我必须只配置 services.php 和 .env 吗?
【问题讨论】:
标签: php laravel email laravel-5.1
我的重点是发送带有表单的电子邮件,您可以在其中插入: 姓名, 姓, 来自(任何电子邮件), 到(我的电子邮件)。 首先我尝试使用谷歌配置(见互联网),但电子邮件不发送,结果是一个空白页。 我必须只配置 services.php 和 .env 吗?
【问题讨论】:
标签: php laravel email laravel-5.1
没什么复杂的,你看过the docs吗?
首先,您需要在config/mail.php(如'driver')或.env(如MAIL_DRIVER)中设置您的配置。
您可以开始将其设置为sendmail,但请考虑在您上网后立即使用smtp 或mailgun 之类的服务。
第二步是创建视图,如app/resources/views/emails 中的示例(后面的sn-p 将使用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
【讨论】: