Laravel框架实现的使用smtp发送邮件功能示例

3 2019-6-5 19:38

本文实例讲述了Laravel框架实现的使用smtp发送邮件功能。分享给大家供大家参考,具体如下:

1、.env文件中配置

MAIL_DRIVER=smtp
MAIL_HOST=smtp.邮箱后缀
MAIL_PORT=邮件服务器发送端口
MAIL_USERNAME=发送方邮件地址
MAIL_PASSWORD=发送方邮箱生成的第三方登陆码
MAIL_FROM_ADDRESS=发送邮箱地址
MAIL_FROM_NAME=发送方名称

2、config目录下mail.php文件配置

可以不配置,因为会被.env文件覆盖掉。(只有在.env中没有的时候才会去该文件中取值)

3、app/console/commonds/sendMail.php

namespace App\Console\Commands;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Mail;
class SendMailCommand extends Command
{
  /**
   * The name and signature of the console command.
   *
   * @var string
   */
  protected $signature = 'demo:SendMail';
  /**
   * The console command description.
   *
   * @var string
   */
  protected $description = '测试脚本SendMail';
  /**
   * constructor
   */
  public function __construct()
  {
    parent::__construct();
  }
  /**
   * Execute the console command.
   *
   * @return mixed
   */
  public function handle()
  {
    $content = '这是一封的测试邮件.';
    $toMail = '目标邮箱';
    Mail::raw($content, function ($message) use ($toMail) {
      $message->subject('[ 测试 ] 测试邮件SendMail - ' .date('Y-m-d H:i:s'));
      $message->to($toMail);
    });
  }
}

4、测试

cmd切换到项目根目录下,执行

php artisan demo:SendMail