web-dev-qa-db-ja.com

Yii2メーラーで複数の受信者にメールを送信する方法OR yii2メーラーでsetCcを追加する方法

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();
9
Kalai S

次のコードを試しましたが、機能しています。コードで奇妙なのは、配列を含む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.

それが役に立てば幸い。

12
Ydakilux

私のために働いた:

            ->setTo([
                    '[email protected]' => 'John Doe',
                    '[email protected]' => 'Jane Doe',
            ])
1
Stan Fad

解決策を試してください:

$mail = Yii::$app->mailer->compose($mail_type, $params)
        ->setFrom([ self::$_sender => self::$_senderName ])
        ->setSubject($subject);
    foreach(self::$_to as $receiver){
        $mail->setTo($receiver)
            ->send();
    }
0
codeon.me

角かっこで囲む必要があるだけです。

['[email protected]', '[email protected]']

クラスリファレンス yii\swiftmailer\Message に詳しく記載されています。

0