1

こんにちは私は私のアプリでswiftmailerコンポーネントを使用していて、使用しているデバッグモードをチェックして異なる設定を使用するswiftmailer用の個別の構成(おそらくconfigフォルダーにありますか?)を持つ方法を探していますか?

ケース1:本番モードでは、認証なしの単純なSMTPサーバーを使用します。ケース2:デバッグモードでは、ローカルで開発しているため、Gmail設定またはその他の設定を使用します

これは可能ですか?

設定コードケース1:

$this->SwiftMailer->smtpHost = ''; 

設定コードケース2:

        $this->SwiftMailer->smtpType = ''; 
        $this->SwiftMailer->smtpHost = ''; 
        $this->SwiftMailer->smtpPort =; 
        $this->SwiftMailer->smtpUsername = ''; 
        $this->SwiftMailer->smtpPassword = ''; 
4

1 に答える 1

1

私は最も速い方法は次のようになると思います:

<?php
    Configure::load('swiftmailer');
    $this->SwiftMailer->smtpType =
      Configure::read('SwiftMailer.'.Configure::read().'.smtpType');
    $this->SwiftMailer->smtpHost = 
      Configure::read('SwiftMailer.'.Configure::read().'.smtpHost');
    $this->SwiftMailer->smtpPort = 
      Configure::read('SwiftMailer.'.Configure::read().'.smtpPort');
    $this->SwiftMailer->smtpUsername = 
      Configure::read('SwiftMailer.'.Configure::read().'.smtpUsername');
    $this->SwiftMailer->smtpPassword = 
      Configure::read('SwiftMailer.'.Configure::read().'.smtpPassword');
?>

今どこにそれを置くか。Controllerコンストラクターをお勧めします。そうすれば、すっきりと整頓されます。値については、いつでもプライベート構成ファイルを使用できます。

// /app/config/swiftmailer.php:
<?php
  $config['SwiftMailer'][0]['smtpType'] = 'value';
  $config['SwiftMailer'][0]['smtpHost'] = 'value';
  $config['SwiftMailer'][0]['smtpPort'] = 'value';
  $config['SwiftMailer'][0]['smtpUsername'] = 'value';
  $config['SwiftMailer'][0]['smtpPassword'] = 'value';

  $config['SwiftMailer'][1]['smtpType'] = 'value';
  $config['SwiftMailer'][1]['smtpHost'] = 'value';
  $config['SwiftMailer'][1]['smtpPort'] = 'value';
  $config['SwiftMailer'][1]['smtpUsername'] = 'value';
  $config['SwiftMailer'][1]['smtpPassword'] = 'value';

  $config['SwiftMailer'][2]['smtpType'] = 'value';
  $config['SwiftMailer'][2]['smtpHost'] = 'value';
  $config['SwiftMailer'][2]['smtpPort'] = 'value';
  $config['SwiftMailer'][2]['smtpUsername'] = 'value';
  $config['SwiftMailer'][2]['smtpPassword'] = 'value';
?>

より一般的な例は、構成クラスv1.2および構成クラスv1.3にあります。

内容は同じようですので、1.2から1.3に変わっていないようです。

それが役に立てば幸い。

于 2010-09-22T13:07:57.450 に答える