legend3---lavarel中使用qq邮箱发送邮件
legend3---lavarel中使用qq邮箱发送邮件
一、总结
一句话总结:
第一步:配置邮箱做服务器,比如qq邮箱,网易163邮箱
第二步:配置lavarel的配置文件
第三部:写邮件发送代码就去看lavarel的手册,很详细
1、在qq邮箱中配置IMAP/SMTP服务的时候的授权码的作用是什么?
方便第三方登录:在lavarel中使用邮箱用户名加授权码登录以便发送邮件
2、lavarel中的mail源文件的位置在哪?
vendor的lavavel里面:legend3\vendor\laravel\framework\src\Illuminate\Mail\Mailer.php
3、lavarel中发送邮件的方法主要是什么方法?
send方法:\Mail::send('mail.reg',[],function ($message){
//发送邮件public functionsend_email(){\Mail::send('mail.reg',[],function ($message){$message->to('404006308@qq.com');$message->subject('亲爱的用户,恭喜您注册成功');});}
二、lavarel中使用qq邮箱发送邮件
第一步:配置邮箱做服务器,比如qq邮箱
在邮箱设置开启POP3/SMTP服务和IMAP/SMTP服务
会让你发送短信验证,然后给你授权码(在lavarel中配置需要)
(这张是用的别人的图片)
第二步:配置lavarel的配置文件
配置.env
配置config中的mail
第三部:写邮件发送代码就去看lavarel的手册,很详细
最简单的发送代码
//发送邮件public functionsend_email(){\Mail::raw('邮件测试',function ($message){$message->to('404006308@qq.com');});}
成功实例
带上主题
//发送邮件public functionsend_email(){\Mail::raw('邮件测试',function ($message){$message->to('404006308@qq.com');$message->subject('亲爱的用户,恭喜您注册成功');});}
5、发送视图代码及实例
send方法
//发送邮件public functionsend_email(){\Mail::send('mail.reg',[],function ($message){$message->to('404006308@qq.com');$message->subject('亲爱的用户,恭喜您注册成功');});}
视图位置
视图代码
{{--用户注册发送邮件的模板视图--}}<!doctype html> <htmllang="en"> <head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><metahttp-equiv="X-UA-Compatible"content="ie=edge"><title>Document</title> </head> <body><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1><h1>1</h1> </body> </html>
收到的邮件结果
二、Laravel自带SMTP邮件组件实现发送邮件(QQ、163、企业邮箱都可)
转自或参考:Laravel自带SMTP邮件组件实现发送邮件(QQ、163、企业邮箱都可)
https://blog.csdn.net/woqianduo/article/details/81024244
生成控制器
php artisan make::controller MailController
配置路由
Route::any('mail/send','MailController@send');
在app/Http/Controllers生成了一个MailController控制器,如下所示:
<?php namespace App\Http\Controllers; use App\Http\Requests; class MailController extends Controller { //}
编辑上面控制器,加入以下的逻辑处理:
use Mail;
class MailController{ public function send() {$name = '我发的第一份邮件'; // Mail::send()的返回值为空,所以可以其他方法进行判断Mail::send('emails.test',['name'=>$name],function($message){ $to = '123456789@qq.com'; $message ->to($to)->subject('邮件测试'); }); // 返回的一个错误数组,利用此可以判断是否发送成功dd(Mail::failures());}
}
Mail::send();需要传三个参数,第一个为引用的模板,第二个为给模板传递的变量(邮箱发送的文本内容),第三个为一个闭包,参数绑定Mail类的一个实例。
在resources/emails下创建一个模板文件。
{{$name}}hello world。
好,现在在服务器上进行测试了,在地址栏输入http://localhost/mail/send(自己的访问地址),发送成功。
1. 发送纯文本邮件
Mail::raw('你好,我是PHP程序!', function ($message) {$to = '123456789@qq.com';$message ->to($to)->subject('纯文本信息邮件测试');
});
2.邮件中发送附件
发生图片:
{{$name}},这是一封测试邮件
<br>
<img src="{{$message->embedData($image,'test.jpg')}}">
public function send(){ $image = Storage::get('images/obama.jpg'); //本地文件//$image = 'http://www.baidu.com/sousuo/pic/sdaadar24545ssqq22.jpg';//网上图片Mail::send('emails.test',['image'=>$image],function($message){ $to = '123456789@qq.com';$message->to($to)->subject('图片测试'); }); if(count(Mail::failures()) < 1){echo '发送邮件成功,请查收!'; }else{echo '发送邮件失败,请重试!';}
}
3. 邮件附件
public function sendFile(){ $name = '我发的第一份邮件'; Mail::send('emails.test',['name'=>$name],function($message){ $to = '123456789@qq.com';$message->to($to)->subject('邮件测试'); $attachment = storage_path('xls/files/test.xls');// 在邮件中上传附件$message->attach($attachment,['as'=>'中文文档.xls']); });
}
$message的attach方法上传附件,该方法第一个参数是附件地址,第二个参数为一些额外参数,这里我们通过as指定附件在邮件中的显示名称。
测试如果显示文件名乱码的话,就这样写
$message->attach($attachment,['as'=>"=?UTF-8?B?".base64_encode('中文文档')."?=.xls"]);
-
转载于:https://www.cnblogs.com/Renyi-Fan/p/11478389.html
legend3---lavarel中使用qq邮箱发送邮件相关推荐
- SpringBoot中使用qq邮箱发送邮件
pom.xml文件添加依赖 <!--邮箱验证--><dependency><groupId>org.springframework.boot</groupId ...
- 仿联想商城laravel实战---7、lavarel中如何给用户发送邮件
仿联想商城laravel实战---7.lavarel中如何给用户发送邮件 一.总结 一句话总结: 设置邮件服务器,比如163邮箱 lavarel中配置邮件服务,在.env中 控制器中使用Mail对象发 ...
- java发送qq邮箱不成功_java,_使用QQ邮箱发送邮件遇到的问题,java - phpStudy
使用QQ邮箱发送邮件遇到的问题 代码是在网上抄的别人今年写的,但是我运行起来一直报错,也不知道什么原因,请大神帮忙指点一下::谢谢!!! 以下是我的代码 public class Sendmail8 ...
- python3利用smtplib通过qq邮箱发送邮件
前言 本文主要给大家介绍了关于python3 smtplib通过qq邮箱发送邮件的相关内容, smtplib模块是smtp简单邮件传输协议客户端的实现,为了通用性,有时候发送邮件的时候要带附件或图片, ...
- php模拟登录qq邮箱_PHP 利用QQ邮箱发送邮件的实现
这篇文章主要介绍了关于PHP 利用QQ邮箱发送邮件的实现,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下在 PHP 应用开发中,往往需要验证用户邮箱.发送消息通知,而使用 PHP 内置的 ...
- Java基于JavaMail实现向QQ邮箱发送邮件遇到的问题
最近使用Java基于JavaMail实现向QQ邮箱发送邮件老是发送失败,在网上搜了下,终于找到原因,记录下. 参考:http://www.jb51.net/article/78405.htm 网上还有 ...
- Java mail使用QQ邮箱发送邮件配置方案
Java mail使用QQ邮箱发送邮件配置方案 java mail配置了QQ邮箱作为服务器发送邮件,结果导致出现503异常: Authentication failed; nested excepti ...
- python 用QQ邮箱发送邮件
SMTP 是发送邮件的协议.Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮箱. Python对SMTP支持有smtplib 和email 两个模块,email负责构造 ...
- python脚本实现qq邮箱发送邮件
直接调用python自带得smtplib 库和 email 库就能实现邮件的发送 qq邮箱发送邮件需要在qq邮箱中设置开启qq邮箱授权码 进入网页版qq邮箱,点击设置,找到账户设置 下拉到最下面 生成 ...
最新文章
- 数据结构算法 简单的面试思考题
- ASP.NET基础教程-DataTable类对象-属性方法和事件
- 开发人员学Linux(10):CentOS7安装配置代码质量管理平台SonarQube6.4
- 【MATLAB】进阶绘图 ( colormap 颜色图矩阵分析 | 自定义 colormap 颜色图 | 生成 64 x 3 的 colormap 颜色图矩阵 )
- dicom多帧转换_Python解析多帧dicom数据详解
- c++新特性11 (11)unique_ptr
- 由于更换了java版本,Eclipse启动时报错:JRE or JDK must be available in order to run Eclipse
- 如何解决ABBYY FineReader中表格检测不到问题
- (八)限定某个目录禁止解析php、限制user_agent和PHP相关配置
- 生产三码 黑苹果_黑苹果OC配置工具:OpenCore Configurator v2.15.2.0
- C#学习记录3上——类的封装,继承,多态
- 覆盖php扩展后服务挂了,PHP 扩展管理
- springboot分页展示功能_SpringBoot实战项目(三)用户列表以及分页功能实现
- spring扩展点四:SmartInitializingSingleton 补充
- 数字三角形、数塔问题(DP)
- 英语词根词缀记忆法(全集)_【干货又来啦】中考英语词汇速记,你也会说 so easy啦...
- 短网址还原 php,php怎么实现短网址还原
- 论“蹭热点”,我只服“杜蕾斯”,盘点“杜蕾斯官方”曾蹭过的十大热点!
- 单机搭建Nacos集群
- 递归牛顿欧拉(正/逆)动力学仿真