В моем приложении мы отправляем уведомления по электронной почте в данный момент, например, в вашем реестре или когда необходимо подтвердить некоторую информацию по электронной почте.
Но также нам нужно отправить персонализированные электронные письма (только в одном тексте) для сотен пользователей, но я не знаю, как объединить электронную почту Symfony2 без электронной почты в том же проекте.
Есть что-то вроде параметра при отправке письма, чтобы указать это?
Что-то вроде $ email-> send ('no-spool');
Я нашел решение и разместил здесь: Как определить дополнительную почтовую службу для использования спула и отправки мгновенных писем в Symfony2
В двух словах:
instant_mailer: class: %swiftmailer.class% arguments: ["@?swiftmailer.transport.real"]
PEAR :: Mail_Queue http://pear.php.net/package/Mail_Queue специально разработан для буферизации больших объемов почты для отправки. поэтому я бы использовал это специально для всех ваших несрочных сообщений, а затем использовал общую функцию почты или даже Pear :: Mail для немедленных.
Согласно документации Symfony 1.4, вы можете использовать следующий вызов для немедленного отправки сообщения (когда вы используете стратегию привязки для проекта в целом):
$ This-> getMailer () -> sendNextImmediately () -> отправить ($ сообщение);
Это намного проще, чем принятый ответ, и будет правильным решением, если вам не нужно отправлять много буферизованных сообщений. Я бы представил то же самое, или аналогичная функция существует в symfony2.
http://www.symfony-project.org/gentle-introduction/1_4/en/11-Emails