Mailer组件是yii框架自带的用于收发邮件的组件,无需安装,只需做一些配置即可使用,非常便捷。本文就mailer组件从配置到使用进行简单讲解。

    首先在config/main.php配置如下:

return [
'components' => [
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
'useFileTransport' => false,
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.qq.com',//服务器根据不同邮箱类型而定,这里以qq邮箱为例
'username' => '250040091004@qq.com',//发送者邮箱地址
'password' => 'vwwujuntianwefwefa',//SMTP密码
'port' => '25',
'encryption' => 'tls'
]
]
]
];

这里要选择一个邮箱作为发送方,其中username设置发送方邮箱地址,可以在config/params.php文件中配置一个supportEmail参数指定为这个邮箱地址,

下面直接使用Yii::$app->params['supportEmail']来表示这个邮箱地址。password参数设置的是SMTP密码,可以在邮箱界面上查看,如果是qq邮箱的话,

依次点击“设置”-》“账户”,在“开启服务”中开启“IMAP/SMTP服务”就会弹出窗口告诉你SMTP密码,直接复制粘贴到配置文件中即可。

配置好之后就可以使用了,使用方法如下:

$mailer = Yii::$app->mailer->compose();
$mailer->setFrom(Yii::$app->params['supportEmail']);//发送者
$mailer->setTo('25040091004222@qq.com');//接收者
$mailer->setSubject('收到了吗');//邮件标题
$mailer->setHtmlBody('hello,wujuntian先生,请问您收到邮件了吗??');//邮件正文内容
$status = $mailer->send();//发送,成功则返回1

以上方法使用setHtmlBody()方法设置邮件正文内容,若邮件内容比较多,你也可以将邮件内容单独写成视图文件,然后在compose方法中指定作为

邮件内容的视图,使用方法如下:

Yii::$app->mailer->compose(
['html' => 'passwordResetToken-html', 'text' => 'passwordResetToken-text'],//指定视图
['****' => ****]//这里可以传一些视图需要的参数
)
->setFrom([Yii::$app->params['supportEmail'] => '个人管理系统'])
->setTo($this->email)
->setSubject(‘你好吗?’)
->send();

注意,在compose()方法中指定的视图文件'passwordResetToken-html’对应的是’config/mail/passwordResetToken-html.php’这个文件。

最新文章

  1. [转]用C/C++扩展PHP详解
  2. vs2010集成git指南
  3. mvn filter autoconfig 产生自动配置
  4. HTML: margin重疊現象的說明
  5. hdoj 3336 Count the string【kmp算法求前缀在原字符串中出现总次数】
  6. JSP中用include标签动态引入其它文件报错
  7. java项目组会议纪要
  8. 设计模式二 适配器模式 adapter
  9. 怎么在Eclipse中添加VI插件
  10. JS中如何进行对象的深拷贝
  11. 第三周博客总结 <西北师范大学| 周安伟>
  12. php7之严格模式RFC
  13. 从github clone文件: Failed to receive SOCKS4 connect request ack.
  14. Linux文件系统命令 lsof
  15. 解决 Microsoft Excel has stopped working
  16. python 9*9 乘法表
  17. 基于Linux的USB 主/从设备之间通讯的三种方式
  18. Linux基础入门---学习心得
  19. bzoj2662冻结
  20. 接口测试工具 — jmeter(关联)

热门文章

  1. HashMap 学习心得
  2. JS严格模式
  3. Intellij idea 断点调试
  4. python实例编写(6)--引入unittest测试框架,构造测试集批量测试(以微信统一管理平台为例)
  5. Server Tomcat v7.0 Server at localhost failed to start.解决方法
  6. Laravel的Nginx重写规则完整代码
  7. JVM(五)内存(Heap)分配
  8. 1.Bootstrap-简介
  9. Apache Spark 2.2.0 中文文档 - 集群模式概述 | ApacheCN
  10. mybatis运行时错误Illegal argument exception argument type mismatch