Für jede Website ist das Senden einer E -Mail per PHP -Skript eine sehr häufigste Anforderung. Wenn die Website beispielsweise eine Registrierungsoption für den Benutzer enthält, ist eine Bestätigungs -E -Mail erforderlich, um den Benutzer für eine E -Mail -Überprüfung zu senden. Sie können E -Mails mit PHP mit dem PHP senden Mail () Funktion oder eine PHP -Bibliothek. Zwei hauptsächlich verwendete PHP -Bibliotheken zum Senden von E -Mails sind Phpmailer und Swiftmailer. Die Art, eine E -Mail mit dem zu senden Mail () Funktion wurde in einem anderen Tutorial besprochen. Die Verwendung der Verwendung der Phpmailer Die Bibliothek zum Senden von E -Mails in PHP wurde in diesem Tutorial demonstriert.
Senden einer E -Mail mit Phpmailer:
Phpmailer ist eine sehr nützliche Klassenbibliothek, die eine Sammlung von Funktionen enthält, um E -Mails mit PHP zu senden. Mit dieser Bibliothek können Sie E -Mails auf verschiedene Weise vom lokalen Server senden. Führen Sie den folgenden Befehl aus, um zu installieren Phpmailer Im Ubuntu -Betriebssystem:
$ sudo apt-Get Installieren Sie libphp-Phpmailer
Voraussetzungen:
Sie müssen über ein Google Mail -Konto verfügen, um die E -Mail -Sendeeinrichtung von zu verwenden Phpmailer. Nach der Installation Phpmailer, Sie müssen die Option aktivieren “Erlauben Sie weniger sichere Apps”Von Ihrem Google Mail -Konto.
Verschiedene Beispiele für das Senden von E -Mails mit Phpmailer:
Hier sind die folgenden Verwendungen der Phpmailer Bibliothek zum Senden von E -Mails auf unterschiedliche Weise:
Beispiel 1: Text -E -Mail senden
Das folgende Skript zeigt den Weg zum Senden einer einfachen E -Mail mit Phpmailer. Dieses Skript weist vier wesentliche Teile jeder E -Mail zu (von, an Betreff, Körper). SetFrom und AddAddress Methoden werden verwendet, um Sender- und Empfänger -E -Mail -Adressen festzulegen. Subjekt und Körper Eigenschaften werden verwendet, um das Thema und den Körper der E -Mail festzulegen. Wenn die E -Mail korrekt gesendet wird, wird die Erfolgsnachricht gedruckt, und wenn die E -Mail nicht gesendet wird, wird die Fehlermeldung gedruckt.
Erforderne '/usr/share/php/libphp-Phpmailer/src/phpmailer.PHP ';
Erfordern Sie '/usr/share/php/libphp-phpmailer/src/SMTP.PHP ';
// das Objekt von Phpmailer deklarieren
$ E -Mail = new Phpmailer \ phpmailer \ phpmailer ();
// Richten Sie die erforderliche Konfiguration ein, um E -Mails zu senden
$ mail-> issmtp ();
$ E-Mail-> SMTPAuth = True;
$ E-Mail-> SMTPSECURE = 'SSL';
$ mail-> host = "SMTP.Google Mail.com ";
$ mail-> port = 465;
// Stellen Sie die Google Mail -Adresse ein, die zum Senden von E -Mails verwendet wird
$ mail-> username = "
[email protected] ";
// Legen Sie das gültige Passwort für die Google Mail -Adresse fest
$ mail-> password = "password";
// Setzen Sie die Sender -E -Mail -Adresse
$ E-Mail-> setfrom ("
[email protected] ");
// Setzen Sie die Empfänger -E -Mail -Adresse
$ mail-> addaddress ("
[email protected] ");
// das Thema festlegen
$ mail-> betreff = "testen mail";
// E -Mail -Inhalte festlegen
$ mail-> body = "Hallo Hallo! Verwenden Sie Phpmailer, um E -Mails mit PHP zu senden. "
Wenn(!$ mail-> send ())
Echo "Fehler:" . $ E-Mail-> FehlerInfo;
anders
Echo "E -Mail wurde gesendet.";
?>
Ausgang:
Die folgende Ausgabe wird angezeigt, wenn die E -Mail erfolgreich gesendet wurde:
Wenn Sie die E -Mail -Adresse des Empfängers überprüfen, wird die folgende ähnliche Ausgabe angezeigt:
Beispiel 2: Senden von E -Mails mit HTML -formatierter
Sie können mit PHPMailer mit HTML -formatierter E -Mail -E -Mails senden. Sie müssen verwenden iShtml () mit WAHR Parameterwert für das Senden von HTML -formatiertem E -Mail. Hier, eine andere Methode Altbody () wird verwendet, um E -Mail -Inhalte als einfacher Text zu senden, wenn der Benutzer die E -Mail nicht mit HTML -Inhalten erhalten kann.
Erforderne '/usr/share/php/libphp-Phpmailer/src/phpmailer.PHP ';
Erfordern Sie '/usr/share/php/libphp-phpmailer/src/SMTP.PHP ';
// das Objekt von Phpmailer deklarieren
$ E -Mail = new Phpmailer \ phpmailer \ phpmailer ();
// Richten Sie die erforderliche Konfiguration ein, um E -Mails zu senden
$ mail-> issmtp ();
$ E-Mail-> SMTPAuth = True;
$ E-Mail-> SMTPSECURE = 'SSL';
$ mail-> host = "SMTP.Google Mail.com ";
$ mail-> port = 465;
$ E-Mail-> iShtml (true);
// Stellen Sie die Google Mail -Adresse ein, die zum Senden von E -Mails verwendet wird
$ mail-> username = "
[email protected] ";
// Legen Sie das gültige Passwort für die Google Mail -Adresse fest
$ mail-> password = "password";
// Setzen Sie die Sender -E -Mail -Adresse
$ E-Mail-> setfrom ("
[email protected] ");
// Setzen Sie die Empfänger -E -Mail -Adresse
$ mail-> addaddress ("
[email protected] ");
$ E-Mail-> Betreff = 'Nachricht von Phpmailer gesendet';
$ mail-> body = '
Hallo!
Ich benutze Phpmailer, um E -Mails zu senden
';
$ E-Mail-> Altbody = 'Diese Nachricht wird durch einfacher Text generiert!';
$ E-Mail-> iShtml (true);
Wenn(!$ mail-> send ())
Echo "Fehler:" . $ E-Mail-> FehlerInfo;
anders
Echo "E -Mail wurde gesendet.";
?>
Ausgang:
Wenn Sie die E -Mail -Adresse des Empfängers überprüfen, wird die folgende HTML -formatierte Ausgabe angezeigt:
Beispiel 3: Senden einer E -Mail durch Anhängen einer lokalen Datei
Viele Methoden sind in erhältlich Phpmailer Klasse zum Senden angehängter Inhalte mit der E -Mail. Anhang hinzufügen() Die Methode ist eine von ihnen, die im folgenden Skript verwendet wird. Diese Methode hat einen obligatorischen Parameter und drei optionale Parameter.
addAttachment ($ path, $ name, $ coding, $ type); Erforderne '/usr/share/php/libphp-Phpmailer/src/phpmailer.PHP ';
Erfordern Sie '/usr/share/php/libphp-phpmailer/src/SMTP.PHP ';
// das Objekt von Phpmailer deklarieren
$ E -Mail = new Phpmailer \ phpmailer \ phpmailer ();
// Richten Sie die erforderliche Konfiguration ein, um E -Mails zu senden
$ mail-> issmtp ();
$ E-Mail-> SMTPAuth = True;
$ E-Mail-> SMTPSECURE = 'SSL';
$ mail-> host = "SMTP.Google Mail.com ";
$ mail-> port = 465;
$ E-Mail-> iShtml (true);
// Stellen Sie die Google Mail -Adresse ein, die zum Senden von E -Mails verwendet wird
$ mail-> username = "
[email protected] ";
// Legen Sie das gültige Passwort für die Google Mail -Adresse fest
$ mail-> password = "password";
// Setzen Sie die Sender -E -Mail -Adresse
$ E-Mail-> setfrom ("
[email protected] ");
// Setzen Sie die Empfänger -E -Mail -Adresse
$ mail-> addaddress ("
[email protected] ");
$ mail-> addaddress ('
[email protected] ');
$ E-Mail-> Betreff = 'Nachricht von Phpmailer gesendet';
$ mail-> body = 'Hallo! Verwenden Sie Phpmailer, um E -Mails mit PHP zu senden
$ mail-> addAttachment ('Früchte.txt');
Wenn(!$ mail-> send ())
Echo "Fehler:" . $ E-Mail-> FehlerInfo;
anders
Echo "E -Mail wurde gesendet.";
?>
Ausgang:
Wenn Sie die E -Mail -Adresse des Empfängers überprüfen, wird die beigefügte Datei angezeigt, wenn die Datei korrekt mit der E -Mail beigefügt ist, wie unten gezeigt:
Beispiel 4: Senden einer E -Mail durch Anhängen einer Remotedatei
Wenn Sie Inhalte von einem Remote -Standort anhängen möchten, können Sie die verwenden addStringAttachment () Methode für diesen Zweck. Diese Methode hat zwei Parameter. Der erste Parameter wird verwendet, um Inhalte von einem bestimmten URL -Speicherort zu erhalten, und der zweite Parameter wird verwendet, um den Namen der beigefügten Datei festzulegen.
addStringAttachment (Datei_get_Contents ($ url), Dateiname.pdf ');
Im folgenden Skript wurde die URL -Adresse einer Bilddatei im ersten Parameter festgelegt und “meine Datei.JPG”Wurde im zweiten Parameter dieser Methode eingestellt, um den Namen der angehängten Datei festzulegen.
Erforderne '/usr/share/php/libphp-Phpmailer/src/phpmailer.PHP ';
Erfordern Sie '/usr/share/php/libphp-phpmailer/src/SMTP.PHP ';
// das Objekt von Phpmailer deklarieren
$ E -Mail = new Phpmailer \ phpmailer \ phpmailer ();
// Richten Sie die erforderliche Konfiguration ein, um E -Mails zu senden
$ mail-> issmtp ();
$ E-Mail-> SMTPAuth = True;
$ E-Mail-> SMTPSECURE = 'SSL';
$ mail-> host = "SMTP.Google Mail.com ";
$ mail-> port = 465;
$ E-Mail-> iShtml (true);
// Stellen Sie die Google Mail -Adresse ein, die zum Senden von E -Mails verwendet wird
$ mail-> username = "
[email protected] ";
// Legen Sie das gültige Passwort für die Google Mail -Adresse fest
$ mail-> password = "password";
// Setzen Sie die Sender -E -Mail -Adresse
$ E-Mail-> setfrom ("
[email protected] ");
// Setzen Sie die Empfänger -E -Mail -Adresse
$ mail-> addaddress ("
[email protected] ");
$ mail-> addaddress ('
[email protected] ');
$ E-Mail-> Betreff = 'Nachricht von Phpmailer gesendet';
$ mail-> body = 'Hallo! Verwenden Sie Phpmailer, um E -Mails mit PHP zu senden
$ E-Mail-> addStringAttachment (Datei_get_Contents ('http: // localhost/phpcode/flower.jpg '),' myfile.JPG ');
Wenn(!$ mail-> send ())
Echo "Fehler:" . $ E-Mail-> FehlerInfo;
anders
Echo "E -Mail wurde gesendet.";
?>
Ausgang:
Wenn Sie die E -Mail -Adresse des Empfängers überprüfen, wird die beigefügte Datei angezeigt, wenn die Datei korrekt mit der E -Mail beigefügt ist, wie unten gezeigt:
Beispiel 5: E -Mail mit einer Debug -Nachricht senden
Die SMTPDebug -Eigenschaft der Phpmailer -Klasse aktiviert die Option Debug, bevor die E -Mail gesendet wird. Nach der Ausführung des Skripts wurde der Wert dieser Eigenschaft in diesem Skript auf 1 gesetzt, um die Debug -Nachricht anzuzeigen.
Erforderne '/usr/share/php/libphp-Phpmailer/src/phpmailer.PHP ';
Erfordern Sie '/usr/share/php/libphp-phpmailer/src/SMTP.PHP ';
// das Objekt von Phpmailer deklarieren
$ E -Mail = new Phpmailer \ phpmailer \ phpmailer ();
// Debug -Ausgabe aktivieren
$ E-Mail-> SMTPDEBUG = 1;
// Richten Sie die erforderliche Konfiguration ein, um E -Mails zu senden
$ mail-> issmtp ();
$ E-Mail-> SMTPAuth = True;
$ E-Mail-> SMTPSECURE = 'SSL';
$ mail-> host = "SMTP.Google Mail.com ";
$ mail-> port = 465;
// Stellen Sie die Google Mail -Adresse ein, die zum Senden von E -Mails verwendet wird
$ mail-> username = "
[email protected] ";
// Legen Sie das gültige Passwort für die Google Mail -Adresse fest
$ mail-> password = "password";
// Setzen Sie die Sender -E -Mail -Adresse
$ E-Mail-> setfrom ("
[email protected] ");
// Setzen Sie die Empfänger -E -Mail -Adresse
$ mail-> addaddress ("
[email protected] ");
// das Thema festlegen
$ mail-> betreff = "testen mail";
// E -Mail -Inhalte festlegen
$ mail-> body = "Hallo Hallo! Verwenden Sie Phpmailer, um E -Mails mit PHP zu senden. "
Wenn(!$ mail-> send ())
Echo "Fehler:" . $ E-Mail-> FehlerInfo;
anders
Echo "E -Mail wurde gesendet.";
?>
Beispiel 6: Senden einer E -Mail an mehrere Adressen
Die Art und Weise, wie eine E -Mail an mehrere E -Mail -Adressen mithilfe von Phpmailer gesendet wird, wurde im folgenden Skript angezeigt. Der addcc () und addbcc () Methoden dieser Klasse wurden verwendet, um eine E -Mail gleichzeitig an mehrere Empfänger zu senden.
Erforderne '/usr/share/php/libphp-Phpmailer/src/phpmailer.PHP ';
Erfordern Sie '/usr/share/php/libphp-phpmailer/src/SMTP.PHP ';
// das Objekt von Phpmailer deklarieren
$ E -Mail = new Phpmailer \ phpmailer \ phpmailer ();
// Richten Sie die erforderliche Konfiguration ein, um E -Mails zu senden
$ mail-> issmtp ();
$ E-Mail-> SMTPAuth = True;
$ E-Mail-> SMTPSECURE = 'SSL';
$ mail-> host = "SMTP.Google Mail.com ";
$ mail-> port = 465;
// Stellen Sie die Google Mail -Adresse ein, die zum Senden von E -Mails verwendet wird
$ mail-> username = "
[email protected] ";
// Legen Sie das gültige Passwort für die Google Mail -Adresse fest
$ mail-> password = "password";
// Setzen Sie die Sender -E -Mail -Adresse
$ E-Mail-> setfrom ("
[email protected] ");
// Setzen Sie die Empfänger -E -Mail -Adressen
$ mail-> addaddress ('
[email protected] ',' jafar iqbal ');
$ E-Mail-> AddadDress ('
[email protected] ');
$ mail-> adrepryto ('
[email protected] ');
$ mail-> addcc ('
[email protected] ');
$ E-Mail-> addbcc ('
[email protected] ');
// das Thema festlegen
$ mail-> betreff = "testen mail";
// E -Mail -Inhalte festlegen
$ mail-> body = "Hallo Hallo! Verwenden Sie Phpmailer, um E -Mails mit PHP zu senden. "
Wenn(!$ mail-> send ())
Echo "Fehler:" . $ E-Mail-> FehlerInfo;
anders
Echo "E -Mail wurde gesendet.";
?>
Ausgang:
Wenn Sie die E -Mail -Adresse des Empfängers überprüfen, werden die folgenden Informationen angezeigt:
Abschluss:
Die meisten E -Mail -Sendungsoptionen mithilfe der Phpmailer -Bibliothek wurden in diesem Tutorial erörtert. Außerdem wurden mehrere Beispiele bereitgestellt, um den PHP -Benutzern zu helfen. Wir hoffen, Sie haben diesen Artikel hilfreich gefunden. Weitere Tipps und Informationen finden Sie in den anderen Linux -Hinweisartikeln.