yii发送邮件
2020-03-27 13:12:49
邮件发送需要配置
‘mailer’ => ['class' => 'yii\swiftmailer\Mailer', 'useFileTransport' => false, 'transport' => [ 'class' => 'Swift_SmtpTransport', 'host' => 'smtp.163.com', 'username' => 'XXXX@163.com',//发送者邮箱地址 'password' => 'XXXXXXXX', //SMTP密钥 'port' => '587', 'encryption' => 'ssl',//不要用tls,用tls在服务器上发不出邮件 ], ],</pre><br></p><p>调用方法:</p><p><pre lay-lang="PHP">Yii::$app->mailer->compose('模板名') ->setFrom('from@163.com') ->setTo('from@163.com') ->setSubject('标题') ->setTextBody('内容') ->send();</pre><br></p><p><br></p><p>需要相应的邮箱开启SMTP服务。</p><p>点击 设置 - POP3/SMTP/IMAP,开启 IMAP/SMTP服务</p><p><img src="/upload/article/1585285900.jpg" alt="1585285900.jpg"><br></p><p><br></p><p>还有一个非常奇怪的问题。本地测试一直好使,放到服务器上就一直提示连接不上。</p><p>Swift_TransportException: Connection could not be established with host smtp.163.com [Connection timed out</p><p>就是加密类型的问题。要用ssl格式,端口是587</p><p><br></p>