Yii2 使用Mailer发送邮件

Yii2 使用Mailer发送邮件

修改配置文件

再config/web.php文件添加mailer配置,添加到components下

'components' => [
    'mailer' => [
        'class' => 'yii\swiftmailer\Mailer',
        //'viewPath' => '@common/mail',
        'transport' => [
            'class' => 'Swift_SmtpTransport',
            //我用的是QQ 的代理,所以这里是 QQ 的配置信息
            'host' => 'smtp.qq.com',
            'port' => 25,
            'encryption' => 'tls',
            'username' => '你的QQ邮箱',
            'password' => '在开启SMTP服务后,生成的授权码,不是QQ密码',
        ],
        //发送的邮件信息配置
        'messageConfig' => [
            'charset' => 'utf-8',
            //'from' => ['你的QQ邮箱' => '显示名称']
        ],

    ],
],

控制器调用

<?php

namespace app\controllers;

use Yii;
use yii\filters\AccessControl;
use yii\web\Controller;
use yii\web\Response;
use yii\filters\VerbFilter;
use app\models\SfEfNetwork;
use yii\web\Session;
use yii\log\Logger;
use yii\swiftmailer\Mailer;

class EmailController extends Controller
{
    
    
	public function actionSend()
    {
    
    
    	//不使用模板
       	$mail = Yii::$app->mailer->compose();
        $mail->setTo('收件人邮件');
        $mail->setSubject('邮件的标题');
        $mail->setTextBody('邮件内容文本形式');
        $row = $mail->send();//发送
    }
    
    //模板发送
	public function actionIndex()
    {
    
    
    	$mailer =Yii::$app->mailer;
        $mailer->setTransport([
            'class' => 'Swift_SmtpTransport',
            'host' => 'smtp.qq.com',
            'username' => '发件人邮件',
            'password' => '在开启SMTP服务后,生成的授权码,不是QQ密码',
            'port' => '25',
            'encryption' => 'tls'
        ]);
        $message = $mailer->compose()
            ->setFrom(['发件人邮件'=>'显示名称'])
            ->setTo(['收件人邮件'])
            ->setsubject('邮件的标题')
            ->setTextBody('邮件内容文本形式');

        $row = $message->send();
    }
}

如果状态返回1,但是没有收到邮件,则可能是发送邮箱没配置好SMTP服务,我这边是用QQ邮箱发送的,以下是QQ邮箱开启的方式。
1.点击左上角的设置,进入配置页面
在这里插入图片描述
2.选择账户找到 SMTP,开启服务
在这里插入图片描述
3.点击管理服务,点击生成授权码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42894991/article/details/131061624
今日推荐