Параметры Factories.yml для нескольких экземпляров Mailer в Symfony 1.4

Я работаю над проектом Symfony 1.4, это factories.yml почтовой программы по умолчанию:

  mailer:
class: sfMailer
param:
logging:           %SF_LOGGING_ENABLED%
charset:           %SF_CHARSET%
delivery_strategy: realtime
transport:
class: Swift_SmtpTransport
param:
host:       127.0.0.1
port:       25
encryption: ~
username:   ~
password:   ~

И это код PHP:

$config = sfFactoryConfigHandler::getConfiguration($applicationConfiguration->getConfigPaths('config/factories.yml'));

self::$mailer = new $config['mailer']['class']($applicationConfiguration->getEventDispatcher(), $config['mailer']['param']);

куда $config['mailer']['class']
это sfMailer.

Я хочу, чтобы многие Swift Mailers запомнились с разными параметрами, и для каждого экземпляра в файле factories.yml есть параметры конфигурации.

Как я могу это сделать ? и как я могу получить параметры, которые я хочу, указав имя отправителя?

2

Решение

Не совсем то, что вам нужно, поскольку на самом деле он не определяет почтовую программу в файле yml, но вы можете добиться аналогичного поведения, создав новую почтовую программу, например, так (здесь пример с sendgrid):

$transport  = Swift_SmtpTransport::newInstance('smtp.sendgrid.net');
$transport->setUsername('YOU USERNAME');
$transport->setPassword('YOUR PASSWORD');

$swift      = Swift_Mailer::newInstance($transport);
$swift->send($message);
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]