Отправить email с помощью Swiftmailer в SIlex

Дата публикации: 10 11 2014 Автор: PazitiFF
Для того, чтобы отправить сообщение электронной почты в микрофреймворке silex используюя Swiftmailer, используем следующий способ.
//Подключается класс Response
use Symfony\Component\HttpFoundation\Response;
 
 
//Вызывается метод post приложения в который передаётся бызымянная функция с сообщением
  $app->post('/sendmail', function () use ($app) {
 
  $request = $app['request'];
 
  $app->register(new Silex\Provider\SwiftmailerServiceProvider());
 
  $transporter = Swift_SmtpTransport::newInstance('smtp.gmail.com', 587, 'tls')
    ->setUsername('user@example.com')
    ->setPassword('password');
 
  $app['mailer'] = Swift_Mailer::newInstance($transporter);
 
  $message = \Swift_Message::newInstance()
    ->setSubject('Тема письма')
    ->setFrom(array('noreply@example.com'))
    ->setTo(array('user@example.com'))
    ->setBody('Тело сообщения');
 
  $app['mailer']->send($message);
 
  return new Response('Сообщение отправлено', 201);
});
Так же можно подключить вывод логов отправки письма
  //Логирование отправки письма
  $logger = new Swift_Plugins_Loggers_ArrayLogger();
  $app['mailer']->registerPlugin(new Swift_Plugins_LoggerPlugin($logger));
 
// Вывод логов
  $logger = new Swift_Plugins_Loggers_EchoLogger();
  $app['mailer']->registerPlugin(new Swift_Plugins_LoggerPlugin($logger));
 
  print $logger->dump();

Добавить комментарий

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Вы можете использовать подсветку исходного кода следующими тегами: <code>, <blockcode>, <apache>, <bash>, <css>, <drupal6>, <html5>, <javascript>, <mysql>, <php>.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.