Vorwort
Beim Erstellen eines Benachrichtigungssystems, Laut Verwenden Sie je nach Geschäftsanforderungen unterschiedliche Konten zum Senden von E-Mails. Laravel unterstützt standardmäßig nur das Senden von E-Mails von einer E-Mail-Adresse. Wenn Sie mit der tatsächlichen Situation nicht zufrieden sind, kann die E-Mail nach Verwendung der Methode Config::set() zum dynamischen Festlegen des Kontos erfolgreich gesendet werden, das sendende Konto kann jedoch nicht durch erneutes Festlegen geändert werden.
Empfohlenes Tutorial: „Laravel Tutorial“
Die Methode ist wie folgt:
Erstellen Sie die E-Mail-Kontokonfigurationsdatei/config/my_emails.php
<?php return [ 'emails' => [ 'a' => [ 'email' => 'a@188.com', 'password' => '专属客户端密码', 'smtp' => 'smtp.188.com', 'port' => '465', 'encryption' => 'ssl', 'name' => '靓仔A', ], 'b' => [ 'email' => 'b@188.com', 'password' => '专属客户端密码', 'smtp' => 'smtp.188.com', 'port' => '994', 'encryption' => 'ssl', 'name' => '靓女b', ], ], ];
Als nächstes erstellen Sie die Umschaltassistentenklasse
<?php namespace App\Mail; use Illuminate\Support\Facades\Mail; class MailHelper { public static function setAccount($accountName) { $transport = new \Swift_SmtpTransport( config("my_emails.emails.{$accountName}.smtp"), config("my_emails.emails.{$accountName}.port"), config("my_emails.emails.{$accountName}.encryption") ); $transport->setUsername(config("my_emails.emails.{$accountName}.email")); $transport->setPassword(config("my_emails.emails.{$accountName}.password")); $mailer = new \Swift_Mailer($transport); Mail::setSwiftMailer($mailer); Mail::alwaysFrom(config("my_emails.emails.{$accountName}.email"), config("my_emails.emails.{$accountName}.name")); } }
Die tatsächliche Nutzung lautet wie folgt:
<?php MailHelper::setAccount('a'); Mail::to('boy@163.com')->send(new TestMail()); MailHelper::setAccount('b'); Mail::to('girl@163.com')->send(new TestMail());
Zusammenfassung
Das ist alles für diesen Artikel darüber, wie man Sendekonten in Laravel 6.18.19 elegant wechselt
Verwandte Empfehlungen: „PHP-Tutorial
Das obige ist der detaillierte Inhalt vonLaravel6 wechselt elegant die Sendekonten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!