English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial lernen Sie, wie Sie die PHP-Funktion mail() verwenden, um einfache Text- oder HTML-E-Mails direkt aus einem Skript zu senden.
Das Senden von E-Mail-Nachrichten ist in Web-Anwendungen sehr häufig, z.B. das Senden von Willkommens-E-Mails, wenn Benutzer ein Konto auf Ihrer Website erstellen, das Senden von Newslettern an Ihre registrierten Benutzer, das Sammeln von Benutzerfeedback oder Kommentaren über das Kontaktformular auf Ihrer Website, etc.
Sie können die eingebaute PHP-Funktion mail() verwenden, um E-Mail-Nachrichten in reinem Text- oder formatierten HTML-Format aus einer PHP-Anwendung zu erstellen und an einen oder mehrere Empfänger zu senden. Die Grund语法 der Funktion kann wie folgt angegeben werden:
mail(to, subject, message, headers, parameters)
Die folgende Tabelle gibt einen Überblick über die Parameter dieser Funktion.
Parameter | Beschreibung |
---|---|
Obligatorisch - Nachfolgende Parameter sind obligatorisch | |
An | E-Mail-Adresse des Empfängers. |
Betreff | Thema der zu sendenden E-Mail. Dieser Parameter, d.h. die Betreffzeile, darf keine Zeilenumbrüche (\n) enthalten. |
Nachricht | Definiert die zu sendende Nachricht. Jede Zeile sollte durch einen Zeilenumbruch LF (\n) getrennt werden. Die Anzahl der Zeilen darf nicht70 Zeichen. |
Optional - Nachfolgende Parameter sind optional | |
Kopfzeilen | Wird in der Regel verwendet, um zusätzliche Kopfzeilen hinzuzufügen, wie z.B. 'Absender', 'Kopie', 'Blindkopie'. Zusätzliche Kopfzeilen sollten durch Zeilenumbruch und Leerzeichen CRLF (\r\n) getrennt werden. |
Parameter | Für den Übertragung von zusätzlichen Parametern. |
Die einfachste Methode, E-Mails mit PHP zu senden, ist das Senden von Text-E-Mails. Im folgenden Beispiel erklären wir zunächst die Variablen-E-Mail-Adresse des Empfängers, Betreffzeile und E-Mail-Körper-Dann werden diese Variablen an die Funktion mail() weitergegeben, um eine E-Mail zu senden.
<?php $to = '[email protected]'; $subject = 'Verlobung'; '$message = 'Hallo, Jian, möchtest du mit mir heiraten?';' $from = '[email protected]'; //发送邮件 E-Mail senden echo 'Ihre E-Mail wurde erfolgreich gesendet.'; } else { echo 'E-Mail konnte nicht gesendet werden. Bitte versuchen Sie es noch einmal.'; } ?>
Senden Sie HTML-förmige E-Mails
Bei der Sendung von Textnachrichten mit PHP wird der gesamte Inhalt als einfacher Text betrachtet. Wir verbessern diese Ausgabe und konvertieren die E-Mail in ein HTML-förmiges E-Mail.
<?php $to = '[email protected]'; $subject = 'Verlobung'; $from = '[email protected]'; //Um HTML-E-Mails zu senden, müssen Sie den Content-type Header $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; //Erstellen Sie einen E-Mail-Betreff $headers .= 'From: $from ' . Reply-To: $from . 'X-Mailer: PHP/' . phpversion(); //Schreiben Sie eine einfache HTML-E-Mail $message = '<html>'; $message .= '<h1 style="color:#f40;">Hallo Jane!</h1"> $message .= '<p style="color:#080;font-size:18px;">Willst du mit mir heiraten?</p>'; $message .= '</html>'; //E-Mail senden if(mail($to, $subject, $message, $headers)){ echo 'Ihre E-Mail wurde erfolgreich gesendet.'; } else { echo 'E-Mail konnte nicht gesendet werden. Bitte versuchen Sie es noch einmal.'; } ?>
Hinweis:Die PHP-mail() Funktion ist Teil des PHP-Kerns, aber Sie müssen einen E-Mail-Server auf Ihrem Computer einrichten, damit sie wirklich funktioniert.
In den nächsten beiden Kapiteln (PHP-FormularverarbeitungundPHP-FormularvalidierungIn diesem Kapitel lernen Sie, wie Sie auf Ihrer Website interaktive Kontaktformulare implementieren, um durch diese PHP-Mailfunktion E-Mails mit Kommentaren und Feedback von den Nutzern zu erhalten.