symfony 2では、新しいswiftmessageインスタンスを作成すると、その中にトランスポートを与えることができます。
$email = \Swift_Message::newInstance( $transport )
しかし、トランスポートをその中に配置する方法と構成する方法は?(スプールパスのように)
私は試した:
$transport = new \Swift_Transport_SpoolTransport();
キャッチ可能な致命的なエラー:Swift_Transport_SpoolTransport :: __construct()に渡される引数1は、Swift_Events_EventDispatcherのインスタンスである必要があり、指定されていない場合は、67行目の/Users/mitchel/Projecten/Refurls/src/Refurl/FrontendBundle/Controller/MessageController.phpで呼び出されます。 /Users/mitchel/Projecten/Refurls/vendor/swiftmailer/lib/classes/Swift/Transport/SpoolTransport.phpの27行目で定義されています
だから私は正しいクラスを使っていないと思います。誰が私を正しい方向に押し進めることができますか?=)
次のコードも直接送信します
$transport = new \Swift_FileSpool( '../app/spool' );
$email = \Swift_Message::newInstance( $transport )
Swift_Messageはトランポートを期待していないことがわかりました。
public function __construct($subject = null, $body = null,
$contentType = null, $charset = null)
トランスポートを与えるといいでしょう。構成で構成したくない理由は、2つのサービスと1つのサービスを次のように作成する場合です。
<argument type="service" id="swiftmailer.transport.real" />
このtransport.realは、swiftmailer.delivery_addressを無視します。