1

symfony2 swift_mailer を使用してメールを送信する次のコードがあります

$message = \Swift_Message::newInstance()
                ->setSubject('tets')
                ->setFrom(array('request@reqa.com' => 'Test Mail'))
                ->addTo('test@test.com')
                ->addCc('test@te.com')
                ->addCc('test1@test1.com')
                ->addCc('test2@test2.com')
                ->setBody($html, 'text/html');
        $this->get('mailer')->send($message);

私の問題は、データベースから addCc 電子メール アドレスを読み込んでいることです。したがって、このように、addCc 電子メール アドレスを で区切って addCC 電子メール アドレスを区切る方法はありますか ->addCc('test2@test2.com,test4@test4.com')

ありがとう

4

1 に答える 1

8

setCC直接使用するか(ドキュメント)...

$message->setCc(array(
  'person1@example.org',
  'person2@otherdomain.org' => 'Person 2 Name',
  'person3@example.org',
  'person4@example.org',
  'person5@example.org' => 'Person 5 Name'
));

...またはエンティティのコレクションをループしてaddCC、それぞれに対して実行します。

$receipients = $this->getDoctrine()->getRepository("...")->findBy(array(".." => ".."));

foreach ($receipients as $receipient) {
   $message->addCC($receipient->getMail());
}

$this->get('mailer')->send($message);

,...または、配列への文字列だけを使用できる cc アドレスを持つ -separated 文字列しかない場合explodesetCCその後、配列要素をループするか、上記のように配列を直接渡します。

于 2013-08-06T11:24:58.660 に答える