Yii2 mailer 动态配置报错 unknown property: Swift_MailTransport::host
使用Yii2建立站群,动态读取数据库的发送邮件的smtp配置,可载入后报错Setting unknown property: Swift_MailTransport::host
config/web.php
的 mailer
配置如下:
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
// send all mails to a file by default. You have to set
// 'useFileTransport' to false and configure a transport
// for the mailer to send real emails.
'useFileTransport' => true,
'transport' => [
'class' => 'Swift_SmtpTransport',
// 'host' => '',
// 'username' => '',
// 'password' => '',
// 'port' => '25',
'encryption' => 'tls'
]
]
在控制器实例化beforeAction
之前进行的如下event绑定:
if (Yii::$app->params['enable_email'] && !empty(Yii::$app->params['smtp_host'])
&& !empty(Yii::$app->params['smtp_user']) && !empty(Yii::$app->params['smtp_pwd'])
) {
Yii::$app->mailer->useFileTransport = false;
Yii::$app->mailer->setTransport([
'host' => Yii::$app->params['smtp_host'],
'username' => Yii::$app->params['smtp_user'],
'password' => Yii::$app->params['smtp_pwd'],
'port' => Yii::$app->params['smtp_port']
]);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
试试这个
来源:https://github.com/iiYii/getyii/blob/master/frontend%2Fmodels%2FPasswordResetRequestForm.php#L19-L31