2012-02-06 6 views
1

私はZend_Mailを使ってアプリケーションの自動システム電子メールを処理しています。ただし、多数の設定があります。(サインアップメールは[email protected]から、カスタマーサービスメールは[email protected]から送信されます)。電子メールヘッダーを設定するときに、アクションコントローラー内でコードを複製したくないのですが、数多くの静的メソッドを持つメールファクトリーを使用して、さまざまな電子メールの構成をすべて取得することもできません。私はどのように進めるべきですか?Zend_Mail、システム通知用のヘッダの多数の設定を適切に処理する方法?

私は、すべての異なるシステム電子メールアドレスの名前と電子メールアドレスのクラス定数(mailFactoryクラス内)を作成してから、アクションコントローラ内で電子メールヘッダーを構成することを考えていますどの時点で再使用される構成が見つかるまで、そのタイプの電子メールを取得する静的メソッドを作成します。

+0

私はあまりにもずっと前に似たような質問に答えました。解決策はあなたにとって興味深いかもしれません。基本的には、application.iniファイルに複数のデフォルトのメール設定を持つためのショートカット方法を提供します。うまくいけばそれはあなたを助けることができます:http://stackoverflow.com/questions/8274476/multiple-zend-mail-configurations-in-application-ini/8275861#8275861 – drew010

答えて

0

「getMail()」という関数を持つ「MailHelper」のようなクラスを作成することをお勧めします。

getMail()では、getMailに提供できるオプションに基づいてZend_Mailインスタンスを作成します。それで、単にスイッチケースを作って、オンデマンドでオプションを設定することができます。

これにより、柔軟性を最大限に高めたZend_Mailインスタンスを作成する場所が1つしかないことが保証されます。

関連する問題