Yii2メーラーで複数の受信者にメールを送信する方法は?
複数の受信者用のこのコードですが、機能していません。
$value = Yii::$app->mailer->compose()
->setFrom([$this->email => $this->name])
->setTo(array($model->email_1,$model->email_2))
->setSubject($model->status)
->setHtmlBody($model->description)
->send();
yii2メーラーにsetCcを追加する方法は?
SetCcを追加するためのこのコードですが、これも機能していません。
$value = Yii::$app->mailer->compose()
->setFrom([$this->email => $this->name])
->setTo($model->email_1)
->setCc($model->email_2)
->setSubject($model->status)
->setHtmlBody($model->description)
->send();
次のコードを試しましたが、機能しています。コードで奇妙なのは、配列を含むsetFromにあるようです。
Yii::$app->mailer->compose()
->setFrom('[email protected]')
->setTo(array('[email protected]', '[email protected]'))
->setCc(array('[email protected]'))
->setSubject('Sending Email')
->setTextBody('This is Plain text content')
->setHtmlBody('Please go to <a href="http://google.com/">GOOGLE</a>')
->send();
Swiftメーラーコードには次のコメントがあります:
* Set the From address of this message.
*
* It is permissible for multiple From addresses to be set using an array.
*
* If multiple From addresses are used, you SHOULD set the Sender address and
* according to RFC 2822, MUST set the sender address.
それが役に立てば幸い。
私のために働いた:
->setTo([
'[email protected]' => 'John Doe',
'[email protected]' => 'Jane Doe',
])
解決策を試してください:
$mail = Yii::$app->mailer->compose($mail_type, $params)
->setFrom([ self::$_sender => self::$_senderName ])
->setSubject($subject);
foreach(self::$_to as $receiver){
$mail->setTo($receiver)
->send();
}
角かっこで囲む必要があるだけです。
['[email protected]', '[email protected]']
クラスリファレンス yii\swiftmailer\Message に詳しく記載されています。