Heim >Backend-Entwicklung >PHP-Tutorial >Senden Sie E -Mails in PHP mit Symfony Mailer
Dieser Artikel taucht in die Symfony Mailer -Bibliothek ein, mit der Sie E -Mails von PHP -Anwendungen senden können. Beginnend mit der Installation und Konfiguration werden wir Schritt für Schritt ein Beispiel für ein reales Leben erläutern, das alle Aspekte des Sendens von E-Mails mithilfe der Symfony Mailer-Bibliothek demonstriert.
Sie haben eine Vielzahl von Möglichkeiten zu wählen, wenn Sie E -Mails in einer PHP -Anwendung senden. Möglicherweise erstellen Sie sogar Ihre eigene Wrapper, um Ihre E -Mail -Funktionen schnell einzurichten. Wenn Sie jedoch eine gut gepflegte und mit Feature-reichen Bibliothek verwenden, haben Sie immer Glück.
Symfony Mailer ist eine beliebte Bibliothek zum Senden von E -Mails von PHP -Anwendungen und wird von der PHP -Community weit verbreitet. Es handelt sich um eine Funktionsbibliothek, da sie fast alle Aspekte des Sendens von E-Mails abdeckt, von der Einrichtung verschiedener Möglichkeiten zur Übertragung der gesendeten Nachrichten. Wenn Sie von der Swift Mailer -Bibliothek gehört haben, ist dies der Vorgänger der Symfony Mailer Library - Symfony Mailer ist eine neue und verbesserte Version.
In der Tat ist das Senden von E -Mails mit der Symfony Mailer Library ein sehr einfacher Prozess.
Verwenden Sie nach der Installation des Komponisten den folgenden Befehl, um die Symfony Mailer -Bibliothek zu erhalten.
$ composer require symfony/mailerAuf diese Weise sollte die Symfony Mailer -Bibliothek sowie die erforderlichen Abhängigkeiten im Verzeichnis
Verkäufer installiert werden. Der Inhalt des neu erstellten Composer.json sollte wie folgt sein:
Dies ist der Installationsteil, aber wie sollten Sie ihn verwenden? Dies ist nur ein Problem bei der Einbeziehung der von Composer in Ihrer Anwendung erstellten{ "require": { "symfony/mailer": "^5.4" } }autoload.php
, wie im folgenden Code -Snippet gezeigt.
<?php require_once './vendor/autoload.php'; // your application code... ?>
Erstellen Sie weiterhin die Datei
E -Mail.php, die den folgenden Inhalt enthält.
Lassen Sie uns sehen, wie dieser Code funktioniert.<?php require_once './vendor/autoload.php'; use Symfony\Component\Mailer\Transport; use Symfony\Component\Mailer\Mailer; use Symfony\Component\Mime\Email; // 创建一个传输对象 $transport = Transport::fromDsn('smtp://username:password@hostname:port'); // 创建一个邮件器对象 $mailer = new Mailer($transport); // 创建一个电子邮件对象 $email = (new Email()); // 设置“发件人地址” $email->from('sender@example.test'); // 设置“收件人地址” $email->to('recepient@example.test'); // 设置“主题” $email->subject('使用Symfony Mailer库的演示邮件。'); // 设置纯文本“正文” $email->text('这是邮件的纯文本正文。\n感谢,\n管理员'); // 设置HTML“正文” $email->html('这是邮件的HTML版本。<br><br>内联图像示例:<br><img src="/static/imghwm/default1.png" data-src="http://publicdata.comcid:nature" class="lazy" alt="Send Emails in PHP Using Symfony Mailer "><br><br>感谢,<br>管理员'); // 添加“附件” $email->attachFromPath('/path/to/example.txt'); // 添加“图像” $email->embed(fopen('/path/to/mailor.jpg', 'r'), 'nature'); // 发送邮件 $mailer->send($email);
Schritt 1: Symfony Mailer initialisieren
Nach dem Erstellen der Übertragung müssen wir ein E -Mail -Objekt initialisieren und mit den erforderlichen Eigenschaften dekorieren.
$transport = new SendmailTransport();
$ composer require symfony/mailer
Jetzt setzen wir die "From" -Ade der E -Mail mit der From -Methode fest.
{ "require": { "symfony/mailer": "^5.4" } }
Setzen wir als nächstes die Adresse der E -Mail "to".
<?php require_once './vendor/autoload.php'; // your application code... ?>
Weiter sehen wir, wie Sie Dateien an E -Mails anhängen.
Sie können die Textmethode verwenden.
<?php require_once './vendor/autoload.php'; use Symfony\Component\Mailer\Transport; use Symfony\Component\Mailer\Mailer; use Symfony\Component\Mime\Email; // 创建一个传输对象 $transport = Transport::fromDsn('smtp://username:password@hostname:port'); // 创建一个邮件器对象 $mailer = new Mailer($transport); // 创建一个电子邮件对象 $email = (new Email()); // 设置“发件人地址” $email->from('sender@example.test'); // 设置“收件人地址” $email->to('recepient@example.test'); // 设置“主题” $email->subject('使用Symfony Mailer库的演示邮件。'); // 设置纯文本“正文” $email->text('这是邮件的纯文本正文。\n感谢,\n管理员'); // 设置HTML“正文” $email->html('这是邮件的HTML版本。<br><br>内联图像示例:<br><img src="/static/imghwm/default1.png" data-src="http://publicdata.comcid:nature" class="lazy" alt="Send Emails in PHP Using Symfony Mailer "><br><br>感谢,<br>管理员'); // 添加“附件” $email->attachFromPath('/path/to/example.txt'); // 添加“图像” $email->embed(fopen('/path/to/mailor.jpg', 'r'), 'nature'); // 发送邮件 $mailer->send($email);
Wenn Sie die HTML -Version der Nachricht festlegen möchten, können Sie das Mailer -Objekt verwenden, um die Nachricht zu senden.
$transport = new SendmailTransport();
Versuchen Sie, das Skript auszuführen, und Sie sollten eine E -Mail erhalten!
Heute haben wir uns eine der beliebtesten PHP -E -Mail -Senden -Bibliotheken angesehen: Symfony Mailer. Mit dieser Bibliothek können Sie problemlos E -Mails von PHP -Skripten senden.
Das obige ist der detaillierte Inhalt vonSenden Sie E -Mails in PHP mit Symfony Mailer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!