Heim >Backend-Entwicklung >PHP-Tutorial >Verwenden Sie die Funktion error_log() von PHP, um E-Mails unter Mac zu senden

Verwenden Sie die Funktion error_log() von PHP, um E-Mails unter Mac zu senden

藏色散人
藏色散人nach vorne
2019-12-10 17:30:152175Durchsuche

Bei der Entwicklung von Webprojekten oder anderen Szenarien müssen wir manchmal „Alarme“ einstellen. Wenn beispielsweise ein bestimmter Indikator der Datenbank einen bestimmten Wert erreicht, muss der Website-Administrator benachrichtigt werden. Heute möchte ich Ihnen eine relativ einfache PHP-Alarmfunktion vorstellen.

Führen Sie zunächst eine Funktion error_log in PHP ein, die zum Aufzeichnen von Protokollen verwendet wird. Sie wird verwendet, um Fehler an einen bestimmten Ort zu senden. Funktionseinführung

bool error_log ( string $message [, int $message_type = 0 
[, string  $destination [, string $extra_headers ]]]

wobei $message die aufzuzeichnenden Informationen darstellt; $message_type wird verwendet, um festzulegen, wohin die Informationen gesendet werden sollen. Mögliche Nachrichtentypen sind wie folgt:

0: Nachricht, die an das PHP-Systemprotokoll gesendet wird, wobei der Protokollierungsmechanismus des Betriebssystems oder eine Datei verwendet wird, je nachdem, worauf die error_log-Direktive eingestellt ist. Dies ist die Standardoption.

1: Die Nachricht wird an die E-Mail-Adresse gesendet, die im Parameter Ziel festgelegt ist. Der vierte Parameter extra_headers wird nur in diesem Typ verwendet.

2: Keine Option mehr

3: Die Nachricht wird an die Datei am Ziel gesendet

4: Die Nachricht wird direkt an den SAPI-Protokollhandler gesendet.

Außerdem wird $destination durch $message_type bestimmt; $extra_headers wird verwendet, wenn $message_type 1 ist.

Unter dem Betriebssystem *nix sendet PHP E-Mails über die Sendmail-Komponente. Stellen Sie also zunächst sicher, dass Sie die sendmail-Komponente installiert haben. Mit dem folgenden Befehl können Sie testen, ob der Mail-Dienst auf Ihrem Server normal funktioniert. Nicht erfolgreich gesendete E-Mails werden standardmäßig an /var/mail/ zurückgesendet. Sie können die Details in der zurückgesendeten E-Mail selbst überprüfen.

echo "test mail content" | mail -s "test mail subject" {xxx@yy.com}

Starten

1. Sendmail installieren

Mac wird normalerweise standardmäßig mit Sendmail ausgeliefert, das sich unter /usr/sbin/ befindet. Wenn nicht, können Sie es selbst suchen und installieren~

2. Suchen Sie die von PHP verwendete Konfigurationsdatei php.ini

php -i | grep php.ini

3 >

sendmail_path = "/usr/sbin/sendmail -t -i"

4. Wenn es in einem Webprojekt verwendet wird, starten Sie den Server nach der Konfiguration neu, damit es wirksam wird.

5. Verwenden Sie php -a, um die interaktive PHP-Shell zu öffnen, geben Sie den folgenden Code ein und gehen Sie dann zur Überprüfung in das Postfach (Hinweis: Das Postfach blockiert möglicherweise solche E-Mails. Bitte achten Sie darauf, eine Whitelist hinzuzufügen).

error_log('hello world',1,'xxx@yy.com');

Die Schritte sind ungefähr wie oben. Die Konfigurationen anderer Linux-basierter Betriebssysteme sind ähnlich. Interessierte Partner können es selbst ausprobieren. Wenn dieser Artikel Mängel aufweist, geben Sie bitte Ihre Kommentare und Kommentare ab~


Weitere PHP-bezogene Kenntnisse finden Sie im

PHP-Tutorial!

Das obige ist der detaillierte Inhalt vonVerwenden Sie die Funktion error_log() von PHP, um E-Mails unter Mac zu senden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen