Yii2使用SwiftMailer(作为组件)
把SwiftMailer添加到yii的组件中去(配置文件中的components
)。然后就按照SwiftMailer
各种方法就能使用了。
组件配置
部分配置内容如下
return [
'components' => [
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
'useFileTransport' => false, //这里一定要改成false,不然邮件不会发送
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => $mailer_config['host'],
'username' => 'user@domain.com',
'password' => 'password',
'port' => '25',
// 'encryption' => 'tls',
],
'messageConfig' => [
'charset' => 'UTF-8',
'from' => 'user@domain.com',
],
],
],
];
使用示例
$mail = Yii::$app->mailer->compose();
// 设置邮件参数
$mail->setTo('receiver@domain.com')
// ->setFrom('user@domain.com', '发件人名称')
->setSubject('邮件主题')
// ->setTextBody('纯文本') // 发布纯文字文本
->setHtmlBody('<h1>Hello, World!</h1>'); //发布可以带html标签的文本
->send(); // 发送