динамически установить драйвер почты из базы данных для другой электронной почты в уведомлении - PullRequest
0 голосов
/ 19 октября 2019

Я хочу установить следующую настройку динамически, прежде чем уведомить пользователя.

MAIL_DRIVER=
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_SENDER_EMAIL=
MAIL_SENDER_NAME=

для каждого клиента, у которого есть возможность установить это значение из внешнего интерфейса, теперь мне нужно отправлять электронную почту в соответствии с настройкойесть ли способ в laravel, я могу сделать это.

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

Заранее спасибо.

1 Ответ

1 голос
/ 19 октября 2019

эти переменные env затем используются в файле конфигурации, вы можете найти правильные имена конфигурации, установив mail.php в папке config

Вы можете изменить значения конфигурации во время выполнения с помощью массива для помощника конфигурации.

См .: https://laravel.com/docs/6.x/configuration#accessing-configuration-values

Вам нужно найти соответствующие переменные и установить их значения, как для Laravel - 6

config([
    'mail.driver' => 'smtp',
    'mail.host' => 'smtp.mailgun.org',
    'mail.port' => 587,
    'mail.encryption' => 'tls',
    'mail.username' => 'if-any',
    'mail.password' => 'if-any',
]);

После этого должны использоваться ваши новые настройки.

...