如何使用控制台控制器在 yii2 中调用 Swift 邮件程序?

How to call Swift mailer in yii2 with console controller?

Yii::$app
          ->mailer
          ->compose(
              ['html' => 'remainder-html', 'text' => 'remainder-text'],
              ['user' => $user,'interview'=>$interview]
          )
          ->setFrom([Yii::$app->params['supportEmail'] => Yii::$app->name . ' robot'])
          ->setTo($user->email)
          ->setSubject('Contact Request From ' . $model->name)
          ->send();

以上是我在 console/controller 中用于 yii2 高级应用程序的代码。其余的东西都在工作,只有邮件不工作。放置在 backend/frontend 控制器中时相同的代码工作。以下是错误。

PHP User Error 'yii\base\ErrorException' with message 'Call to undefined method compose'

Yii2 应用程序对控制台和 Web 使用不同的配置文件。

您需要做的就是在控制台配置文件中配置 'mailer' 组件。如果您使用的是基本应用程序模板,则为 'config/console.php'。