Как получить параметры электронной почты из базы данных

#symfony

#symfony

Вопрос:

Я использую SwiftmailerBundle, но я хочу получить имя пользователя и пароль электронной почты из базы данных, а не из параметров конфигурации. Это возможно?

Я могу использовать SwiftMailer и настройки по своему усмотрению, но я хотел бы использовать SwiftmailerBundle.

Комментарии:

1. да, вы можете получить имя пользователя и пароль из базы данных

Ответ №1:

Да, это возможно, но вы должны убедиться, что транспорт SMTP вызывается в вашем контроллере или службе. Вы должны сделать следующим образом:

  1. следующий фрагмент, помещенный в ваш контроллер или службу
 $transport = (new Swift_SmtpTransport('smtp.XXXX.XXX.XXX', <portno>))
        ->setUsername($username) //username from database
        ->setPassword($password) //password from database
        ->setEncryption('ssl');


        // Create the Mailer using your created Transport
        $mailer = new Swift_Mailer($transport);

  

Комментарии:

1. Я знаю это, но если я сделаю это без SwiftmailerBundle, в профилировщике не будут видны журналы электронной почты.

2. Используете ли вы следующий пакет? «symfony / swiftmailer-bundle»: «^ 3.1»,

3. Да, я использую symfony / swiftmailer-bundle

4. Я также использую тот же пакет. Тем не менее, данное решение работает для меня.

5. Да, это работает, но в среде разработки на панели инструментов профилировщика не будут видны журналы электронной почты. По этой причине я хочу использовать wiftmailer-bundle, а не чистую библиотеку SwiftMailer.