首页 > PHP学习 > yii mailer 发不出去怎么办

yii mailer 发不出去怎么办

时间:2022年6月20日 分类:PHP学习 浏览量:267

yii mailer 发不出去怎么办?

yii2.0发邮件出现发不出去的问题

相关教程推荐:yii框架

yii框架邮件发送步骤:

1.设置配置文件,main.php

'mailer' => [
        'class' => 'yii\swiftmailer\Mailer',
        'viewPath' => '@common/mail',
        'useFileTransport' => false,//这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件
        'transport' => [
            'class' => 'Swift_SmtpTransport',
            'host' => 'smtp.exmail.qq.com',  //每种邮箱的host配置不一样
            'username' => '*******@jwsem.com',
            'password' => '********',
            'port' => '465',//企业邮箱,163邮箱服务器端口为: 25
            'encryption' => 'ssl',
        ],
        'messageConfig' => [
            'charset' => 'UTF-8',
            'from' => ['*******@jwsem.com' => '系统']
        ],
    ],

2.控制器中的使用

                $mail =\Yii::$app->mailer;
                $mail->useFileTransport = false;//不加此句时,如果收不到邮箱,就是在其他环境设置时是true,所以此处可以加上此句,避免收不到邮箱
                $mail->compose()
                    ->setFrom([*******@jwsem.com'=>'系统'])
                    ->setTo(['*******@jwsem.com','*******@qq.com'])//此处为数组时可以发给多个人
                    ->setSubject('邮箱标题')
                    ->setTextBody('姓名:小花,'  电话:132****8564.')
                    ->send();

注:在某个项目开发过程中,我的这个邮件怎么也发不出去,看了配置文件中的配置 ‘useFileTransport’ => false也没错,后来发现在测试环境中的配置是’useFileTransport’ =>true,此时我在控制器中也添加了 ‘useFileTransport’ => false此时就能正常发送了,不过最终原因是要将测试环境中的配置改为false。

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

标签: