English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Grundanleitung

PHP Fortgeschrittene Anleitung

PHP & MySQL

PHP Referenzhandbuch

PHP-E-Mail senden

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.

PHP mail() Funktion

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.

ParameterBeschreibung
Obligatorisch - Nachfolgende Parameter sind obligatorisch
AnE-Mail-Adresse des Empfängers.
BetreffThema der zu sendenden E-Mail. Dieser Parameter, d.h. die Betreffzeile, darf keine Zeilenumbrüche (\n) enthalten.
NachrichtDefiniert 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
KopfzeilenWird 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.
ParameterFür den Übertragung von zusätzlichen Parametern.

Senden von reinem Text-E-Mail

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.';
}
?>

if(mail($to, $subject, $message)){

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.