Ole*_*leg 12 php email laravel
我需要通过mail()php函数发送电子邮件.问题是,我不知道该怎么做:(我已经读过某些地方,我必须将config/mail.php中的'driver'参数更改为'sendmail'.
默认情况下,它看起来像这样:'driver'=> env('MAIL_DRIVER','smtp'),
现在,它看起来像这样:'driver'=>'sendmail',
还试过这个:'driver'=>'mail',
但是,邮件功能仍然不起作用.请帮帮我.提前致谢)
Max*_*ola 36
要像使用PHP函数那样执行相同的操作,在大多数情况下,您应该按以下方式配置Laravel:
使用sendmail,at .env:
MAIL_DRIVER=sendmail
Run Code Online (Sandbox Code Playgroud)
不需要主机,用户,密码,端口和加密.
此时,您可以检查它是否已经有效,但有时还需要下一步.
在config/mail.php中设置一个新的.env选项:
'sendmail' => env('MAIL_SENDMAIL', '/usr/sbin/sendmail -bs')
Run Code Online (Sandbox Code Playgroud)
在.env中设置sendmail路径.您可以查看sendmail_pathphpinfo(),但通常是这一个:
MAIL_SENDMAIL='/usr/sbin/sendmail -t -i'
Run Code Online (Sandbox Code Playgroud)
Ikb*_*bel 17
要使用运行的电子邮件服务器localhost,您的.env文件应如下所示(PHP mail函数不需要用户名或密码)
MAIL_DRIVER=smtp
MAIL_HOST=localhost
MAIL_PORT=25
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=null
Run Code Online (Sandbox Code Playgroud)
然后,更新配置缓存:
php artisan config:cache
Run Code Online (Sandbox Code Playgroud)
Add*_*Ltd -32
您可以设置邮件配置.env文件,例如
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=youremail@gmail.com
MAIL_PASSWORD="password"
MAIL_ENCRYPTION=tls
Run Code Online (Sandbox Code Playgroud)
还可以在 config/mail.php 中设置配置,例如:
'from' => ['address' => 'youremail@gmail.com', 'name' => 'Test'],
然后你可以清除缓存:
php artisan config:cache
php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)