Heim >Backend-Entwicklung >PHP-Tutorial >Verwenden Sie die Funktion error_log() von PHP, um E-Mails unter Mac zu senden
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~
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!