我想在我的项目中使用swiftmailer。我要在管理员注册新用户后将电子邮件发送给新用户。
问题是当我使用'useFileTransport'=> false 时,它将给出此错误
如果我使用'useFileTransport'=> true ,它不会提示任何错误,但电子邮件不会发送。它仅保存在运行时/邮件中
这是我的swiftmailer代码,位于(common / config / main-local.php)
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.gmail.com',
'username' => 'support@example.com',
'password' => 'password',
'port' => '587',
'encryption' => 'tls',
],
'viewPath' => '@common/mail',
'useFileTransport' => false,
],
这是我用于在控制器上发送电子邮件的代码
public function actionSignup()
{
$model = new SignupForm();
Yii::$app->mailer->compose()
->setTo($model->email)
->setFrom('admin@gmail.com')
->setSubject('REGISTRATION')
->setTextBody($model->username)
->send();
if ($model->load(Yii::$app->request->post())) {
if ($user = $model->signup()) {
return $this->goHome();
}
}
return $this->render('signup', [
'model' => $model
]);
}
你能告诉我我做错了什么吗?对不起,如果这只是愚蠢的问题。我是yii2的新手。.