laravel 邮件功能
laravel自带邮箱 功能使用
前置
composer require guzzlehttp/guzzle
.env文件 里有默认配置,要替换 !
MAIL_MAILER=smtp
MAIL_HOST=smtp.qq.com
MAIL_PORT=465
MAIL_USERNAME=邮箱
MAIL_PASSWORD=生成的密钥
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=邮箱
使用
$res = MailController::send($request->email,['url'=>$reset_password_url],'mail.test');
public static function send($to,$content,$view){
// Mail::send()的返回值为空,所以可以其他方法进行判断
Mail::send($view, $content, function ($message) use ($to){
$message->to($to)->subject('重置密码');
});
// 返回的一个错误数组,利用此可以判断是否发送成功
$data = Mail::failures();
if (empty($data)){
return true;
}
return false;
}
其他方法
composer安装邮件类
composer require phpmailer/phpmailer
开启openssl扩展与sockets扩展
确认使用 phpinfo();查看
extension=sockets
extension=openssl
区别
phpmailer库相对于laravel自带的mail库简洁了不少,上手快且优雅,不过,laravel自带的mail库使用view更方便一些
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人