Verwendung der Mail -Funktion in PHP auf Ubuntu

Verwendung der Mail -Funktion in PHP auf Ubuntu

Die Funktion mail () ist eine integrierte PHP. Einige Konfigurationen sind jedoch erforderlich, um E -Mails mit dieser Funktion zu senden. Sie benötigen die Real Mail Server -Informationen zum Einrichten der Konfiguration. Sie können die Mailserverinformationen Ihres aktiven Hosting -Servers oder alle kostenlosen Mail -Serverinformationen verwenden. In diesem Tutorial werden ein Google Mail -Konto und die SMTP -Serverinformationen von Google Mail verwendet.

Setup -Konfiguration

Um die Konfiguration einzurichten, müssen zwei Dateien geändert werden: Die Php.Ini Die Datei und eine andere Datei sind zu konfigurieren, um den Mailserver einzurichten. Befolgen Sie die unten angegebenen Schritte, um die Konfiguration einzurichten. Viele Pakete sind in PHP zum Senden einer E -Mail erhältlich. MSMTP ist ein PHP -Mailserver -Client, der in diesem Tutorial verwendet wird, um E -Mails mit der Funktion PHP Mail () zu senden.

Schritte:

Führen Sie den folgenden Befehl aus, um die zu installieren MSMTP Paket auf Ubuntu, um den Mailserver einzurichten:

$ sudo apt-Get Installieren Sie MSMTP

Erstellen Sie eine Konfigurationsdatei mit dem benannten /etc /msmtprc mit dem folgenden Befehl:

$ sudo nano /etc /msmtprc

Fügen Sie der Datei den folgenden Inhalt hinzu. Fügen Sie die gültige E -Mail -Adresse für die hinzu Benutzer und das gültige Passwort für die Passwort Das wird verwendet, um eine E -Mail zu senden. Setzen Sie die E -Mail -Adresse des Absenders für form Wert.

Standardeinstellungen
tls on
tls_starttls on
tls_trust_file/etc/ssl/certs/ca-zertifikate.crt
Kontoausfall
Host SMTP.Google Mail.com
Port 587
auth on
Benutzer [email protected]
Passwort user_password
von SENTER_EMAIL_ADDRESS

Führen Sie die folgenden Befehle aus, um den Eigentum und die Genehmigung für festzulegen /etc/msmtprc -Datei:

$ sudo chown fahmida /etc /msmtprc
$ sudo chmod 0600 /etc /msmtprc

Öffne das Php.Ini Datei und ändern Sie den folgenden Inhalt mit den folgenden Werten:

SMTP = SMTP.Google Mail.com
SMTP_PORT = 587
sendmail_path = "/usr/bin/msmtp -t -i" "

Syntax:

Bool Mail (Zeichenfolge $ to, String $ Betreff, String $ message [, gemischt $ contode_headers [, String $ addle_parameters]])

Diese Funktion kann vier Argumente erfolgen. Das erste Argument nimmt die E -Mail -Adresse des Empfängers an. Das zweite Argument nimmt das Thema der E -Mail an. Das dritte Argument nimmt das E -Mail -Körper vor. Das letzte Argument ist optional und enthält zusätzliche Informationen der E -Mail als Zeichenfolge oder ein Array.

Senden von E -Mails mit der E -Mail () -Funktion

In diesem Abschnitt des Tutorials werden verschiedene Beispiele für das Senden einer E -Mail über die Funktion von mail () von PHP angezeigt.

Beispiel 1: Senden Sie eine einfache Text -E -Mail

In diesem Beispiel wird angezeigt, wie eine einfache Text -E -Mail mit der Funktion mail () gesendet werden kann. Erstellen Sie eine PHP -Datei mit dem folgenden Skript.

Sie müssen eine gültige E -Mail -Adresse für festlegen $ an Variable, um die Ausgabe des folgenden Skripts zu erhalten. Ein einfacher Text wird als Nachrichtenkörper festgelegt.

// Stellen Sie die E -Mail -Adresse des Wiederaufnahme ein
$ to = "[email protected] ";
// Legen Sie das Thema der E -Mail fest
$ prob Objekt = "Es ist eine Test -E -Mail";
// Setzen Sie die E -Mail -Karosserie
$ message = "Es testet E -Mail -Körper";
// Setzen Sie die Header -Informationen
$ headers = "von: [email protected] \ r \ n ";
$ Header .= "Antwort an: Sender@Google Mail.com \ r \ n ";
// E -Mail mit Message Mail () -Funktion senden
if (mail ($ to, $ subjekt, $ message, $ header))

Echo "E -Mail hat erfolgreich gesendet.\ r \ n ";

anders
Echo "E -Mail hat nicht gesendet.
";

?>

Die folgende Ausgabe wird angezeigt, nachdem das Skript aus dem Webserver ausgeführt wird, wenn die Funktion mail () ordnungsgemäß funktioniert.


Die folgende Ausgabe wird angezeigt, wenn Sie den Posteingang der E -Mail -Adresse überprüfen, die als Empfänger -E -Mail -Adresse festgelegt wurde.

Beispiel 2: Senden Sie eine E -Mail mit HTML -formatierter

Dieses Beispiel zeigt, wie eine E -Mail mit einer HTML -Formatierung mit der E -Mail () -Funktion gesendet werden kann. Erstellen Sie eine PHP -Datei mit dem folgenden Skript.

$ meldung Die Variable wird mit HTML -Inhalten initialisiert, die als E -Mail -Körperschaft gesendet werden. Es wird in der erwähnt $ Header Variable, dass der Inhalt der E -Mail HTML ist.

// Stellen Sie die E -Mail -Adresse des Wiederaufnahme ein
$ to = "[email protected] ";
// Legen Sie das Thema der E -Mail fest
$ prob Objekt = 'Registrierung erfolgreich';
// Setzen Sie die E -Mail -Karosserie
$ message = '

Ihre Registrierung ist erfolgreich abgeschlossen.


Benutzername = Fahmida20

Passwort = ASWQ34GHQW


';
// Wagenrückgabe einstellen
$ nl = "\ r \ n";
// Setzen Sie den Header vom Typ Content-Type
$ headers = 'mime-version: 1.0 '.$ nl;
$ Header .= 'Inhaltstyp: text/html; charSet = iSO-8859-1 '.$ nl;
// Setzen Sie die zusätzlichen Header -Informationen
$ Header .= 'Zu: Mehrab Hossain'.$ nl;
$ Header .= 'Von: admin' '.$ nl;
$ Header .= 'CC: [email protected] '.$ nl;
// E -Mail mit Message Mail () -Funktion senden
if (mail ($ to, $ subjekt, $ message, $ heeps))
Echo "E -Mail hat erfolgreich gesendet.\ r \ n ";

anders
Echo "E -Mail hat nicht gesendet. \ r \ n ";

?>

Die folgende Ausgabe wird angezeigt, nachdem das Skript aus dem Webserver ausgeführt wird, wenn die Funktion mail () ordnungsgemäß funktioniert.


Die folgende Ausgabe wird angezeigt, wenn Sie den Posteingang der E -Mail -Adresse überprüfen, die als Empfänger -E -Mail -Adresse festgelegt wurde.

Beispiel 3: Senden Sie eine E -Mail mit dem Anhang

Dieses Beispiel zeigt, wie eine E -Mail gesendet werden kann, indem eine Textdatei angehängt wird. Erstellen Sie eine Textdatei mit dem folgenden Skript.

Der Inhalt der Textdatei wird vor dem Anhang gelesen und codiert und die Funktion MD5 () wird im Skript verwendet, um eine Zufallszahl für gemischte Inhalte zu generieren. Alle erforderlichen Informationen werden in hinzugefügt $ Header Und $ meldung Variablen vor dem Senden der E -Mail.

// Stellen Sie die E -Mail -Adresse des Wiederaufnahme ein
$ to = "[email protected] ";
// Legen Sie das Thema der E -Mail fest
$ provie = "Dateianhang";
// Wagenrückgabe einstellen
$ nl = "\ r \ n";
// Setzen Sie einen zufälligen Hash, der für gemischte Inhalte verwendet wird
$ separator = md5 (time ());
// Lesen Sie den Inhalt der beigefügten Datei
$ Dateiname = 'myfile.txt';
$ content = file_get_contents ($ Dateiname);
$ content = chunk_split (Base64_Codode ($ content));
// Stellen Sie die E -Mail -Nachricht mit Anhangsinformationen ein
$ message = "-" . $ Separator . $ nl;
$ meldung .= "Inhaltstyp: Text/Plain; Charset =" ISO-8859-1 "" " . $ nl;
$ meldung .= "Content-Transfer-Codierung: 8bit" . $ nl;
$ meldung .= "Eine Textdatei wird mit der E -Mail beigefügt." . $ nl;
$ meldung .= "-" . $ Separator . $ nl;
$ meldung .= "Inhaltstyp: Anwendung/Oktett-Stream; name =" " . $ Dateiname . "" " . $ nl;
$ meldung .= "Content-Transfer-Codierung: Base64" . $ nl;
$ meldung .= "Inhaltsdisposition: Anhang" . $ nl;
$ meldung .= $ Inhalt . $ nl;
$ meldung .= "-" . $ Separator . "-";
// Setzen Sie den Header vom Typ Content-Type
$ headers = 'mime-version: 1.0 '.$ nl;
$ Header .= "Von: [email protected] ".$ nl;
$ Header .= "Antwort an: [email protected] ".$ nl;
$ Header .= "Content-Typ: Multipart/gemischt; boundary =" " . $ Separator . "" " .$ nl;
// E -Mail mit Message Mail () -Funktion senden
if (mail ($ to, $ subjekt, $ message, $ heeps))
Echo "E -Mail wurde mit Anhang erfolgreich gesendet.\ r \ n ";

anders
Echo "E -Mail hat nicht gesendet. \ r \ n ";

?>

Die folgende Ausgabe wird angezeigt, nachdem das Skript aus dem Webserver ausgeführt wird, wenn die Funktion mail () ordnungsgemäß funktioniert.


Die folgende Ausgabe wird angezeigt, wenn Sie den Posteingang der E -Mail -Adresse überprüfen, die als Empfänger -E -Mail -Adresse festgelegt wurde.

Abschluss

In PHP gibt es viele Möglichkeiten, E -Mails zu senden. Die Funktion von PHP Mail () funktioniert bei Ubuntu nach dem Einstellen der Konfiguration nicht ordnungsgemäß. In diesem Tutorial werden die erforderlichen Konfigurationen und die Art des Sendens von E -Mails über die Funktion PHP Mail () angezeigt.