易腾动力社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7424|回复: 0
打印 上一主题 下一主题

Laravel 使用腾讯企业邮箱的 smtp 发送邮件

[复制链接]
跳转到指定楼层
楼主
发表于 2018-10-30 12:08:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
.env
  1. MAIL_DRIVER=smtp
  2. MAIL_HOST=smtp.exmail.qq.com
  3. MAIL_PORT=465
  4. MAIL_SENDER=盘点系统
  5. MAIL_USERNAME=janku@yitens.net
  6. MAIL_PASSWORD=******
  7. MAIL_ENCRYPTION=ssl
复制代码
config/mail.php
  1. 'from' => ['address' => env('MAIL_USERNAME', null), 'name' => env('MAIL_SENDER', null)],
复制代码
模板邮件
【注】:模板必须以.blade.php结尾,不然映射不了值
  1. # test.blade.php
  2. 延河 {{$name}} this is a test mail!

  3. # *Controller.php
  4. $name = '王宝花'; // Mail::send()的返回值为空,所以可以其他方法进行判断
  5. $flag = Mail::send('inventory.test',['name'=>$name],function($message){
  6.     $to = 'kf@yitens.net';
  7.     $message ->to($to)->subject('邮件测试');
  8. });
  9. if($flag){
  10.     echo '发送邮件成功,请查收!';
  11. }else{
  12.     echo '发送邮件失败,请重试!';
  13. }
复制代码
发送纯文本邮件
  1. Mail::raw('你好,我是PHP程序!', function ($m) {
  2.     $to = 'kf@yitens.net';
  3.     //$m->from('janku@yitens.net', 'User');
  4.     $m ->to($to)->cc('janku@yitens.net')->subject('纯文本信息邮件测试'); //cc() 是抄送
  5. });
复制代码
邮件中发送附件
  1. # test.blade.php
  2. {{$name}}你好,这是一封测试文件。
  3. <br>
  4. <img src='{{$message->embed($image)}}'>

  5. # *Controller.php
  6. $name = '王宝花';
  7. $image = 'http://d.hiphotos.baidu.com/zhidao/pic/item/1ad5ad6eddc451da4ab93e2bb0fd5266d11632a6.jpg';
  8. Mail::send('emails.test',['name'=>$name,'imgPath'=>$image],function($message){
  9.     $to = 'kf@yitens.net';
  10.     $message ->to($to)->subject('网络图片测试');
  11. });
  12. if(count(Mail::failures()) < 1){ // 返回的一个错误数组,利用此可以判断是否发送成功
  13.     echo '发送邮件成功,请查收!';
  14. }else{
  15.     echo '发送邮件失败,请重试!';
  16. }
复制代码
本地图片
  1. # test.blade.php
  2. {{$name}},这是一封测试邮件
  3. <br>
  4. <img src="{{$message->embedData($image,'我的自拍照.jpg')}}">

  5. # *Controller.php
  6. $image = Storage::get('images/obama.jpg');
  7. Mail::send('emails.test',['image'=>$image],function($message){
  8.     $to = 'kf@yitens.net';
  9.     $message->to($to)->subject('[本地图片测试]');
  10. });
  11. if(count(Mail::failures()) < 1){
  12.     echo '发送邮件成功,请查收!';
  13. }else{
  14.     echo '发送邮件失败,请重试!';
  15. }
复制代码
邮件附件
  1. $name = '王宝花';
  2. Mail::send('emails.test',['name'=>$name],function($message){
  3.     $to = 'kf@yitens.net';
  4.     $message->to($to)->subject('邮件主题');
  5.     $attachment = storage_path('app/files/test.txt'); // 在邮件中上传附件
  6.     $message->attach($attachment,['as'=>'中文文档.txt']);
  7.     //$message->attach($attachment,['as'=>"=?UTF-8?B?".base64_encode('中文文档')."?=.txt"]);
  8. });
复制代码
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|易腾动力 ( 粤ICP备12094338号 )

GMT+8, 2025-5-4 16:41 , Processed in 0.049541 second(s), 17 queries .

Powered by Discuz! X3

© 2001-2024 Yidz Inc.

快速回复 返回顶部 返回列表