基于Yii2.0发送邮箱

Yii2.0发送邮件是很容易的,只需要配置个文件,然后开启php_openssl扩展即可。首先我们先配置YII2.0邮件类,在YII2.0框架的配置文件的components数组里配置如下:

创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为中江企业提供专业的成都网站建设、网站设计,中江网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。

\'mailer\' => [ \'class\' => \'yiiswiftmailerMailer\', //这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件 \'useFileTransport\' => false, \'transport\' => [ \'class\' => \'Swift_SmtpTransport\', /*这里根据你邮箱地址去配置 我这里用的是网易邮箱*/ \'host\' => \'smtp.163.com\', //发送邮箱的账户 \'username\' => \'你的邮箱账户\', //发送邮箱的密码 \'password\' => \'你的邮箱密码\', //邮箱的端口,网易邮箱是465,腾讯是25,根据需要配置 \'port\' => \'465\', //加密,默认写ssl就可以 \'encryption\' => \'ssl\', ], ],

这样就把YII2.0邮箱配置成功,接下来就来看看能不能发送邮件了,我们写个控制器来发送。代码如下:

public function actionSendmail() { $mail= Yii::$app->mailer->compose(); $mail->setFrom("发送邮箱的账户"); $mail->setTo(\'接收邮箱的账户\'); $mail->setSubject("邮件测试"); $mail->setHtmlBody("

可以发送带html标签文本,如果想发送纯文本,可以使用setTextBody

"); if($mail->send()) { echo "发送成功!"; } else { echo "发送失败!"; } }

最后访问这个控制器,如果显示发送成功,可以去看下接收邮箱是否有一封未读邮件。如果发送失败,请仔细查阅是否字符写错还有是否开启php_openssl扩展。


文章名称:基于Yii2.0发送邮箱
文章起源:http://myzitong.com/article/cghded.html