In PHP ermöglicht es uns mit der Funktion DATE_SUNSET () , die Sonnenuntergangszeit eines bestimmten Ortes zu berechnen. Mit dieser Funktion ist es einfach, ein automatisches Erinnerungsskript zu erstellen, das den Benutzer benachrichtigt, wenn sich die Sonnenuntergangszeit nähert. In diesem Artikel wird erläutert, wie diese Funktion in der PHP -CLI (Befehlszeilenschnittstelle) verwendet wird.
Stellen Sie vor Beginn sicher, dass Ihr System PHP installiert hat und Sie PHP -Skripte aus der Befehlszeile ausführen können. Wenn es nicht installiert ist, können Sie es installieren, indem Sie die offizielle PHP -Website besuchen oder das Paketmanagement -Tool verwenden.
Mit der Funktion date_sunset () wird die Sonnenuntergangszeit des angegebenen Ortes zurückgegeben. Es erfordert die folgenden Parameter:
Zeitstempel : Zeitstempel, das Datum und Uhrzeit angibt.
Format : Das Format, das das Ergebnis zurückgibt, normalerweise Datum_RFC822 oder DATE_ATOM .
Breite : Breitengrad.
Länge : Länge.
Zenith : Der astronomische Höhenwinkel bei Sonnenuntergang (normalerweise unter Verwendung von 90,5 , d. H. Die Sonne sinkt vollständig).
GMT_OFFSET : Zeitzone -Offset (in Stunden).
Die grundlegende Syntax einer Funktion lautet wie folgt:
date_sunset(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, $zenith, $gmt_offset);
Hier ist ein Beispielskript, das zeigt, wie ein einfaches Sonnenuntergangs -Erinnerungsskript mit der Funktion DATE_SUNSET () erstellt wird:
<?php
// Holen Sie sich die Sonnenuntergangszeit des aktuellen Standorts
$latitude = 40.7128; // Der Breitengrad von New York
$longitude = -74.0060; // Länge in New York
// Holen Sie sich den Zeitstempel der aktuellen Zeit
$timestamp = time();
// Holen Sie sich die Sonnenuntergangszeit
$sunset = date_sunset($timestamp, SUNFUNCS_RET_STRING, $latitude, $longitude, 90.5, -5);
// Sonnenuntergangszeit ausgeben
echo "Die heutige Sonnenuntergangszeit ist:$sunset\n";
// Stellen Sie die Erinnerungszeit fest(Zum Beispiel,im voraus30Minute Erinnerung)
$reminderTime = strtotime($sunset) - 30 * 60; // im voraus30Minute
// Holen Sie sich die aktuelle Zeit
$currentTime = time();
// Überprüfen Sie, ob die aktuelle Zeit in der Nähe der Erinnerungszeit liegt
if ($currentTime >= $reminderTime && $currentTime < strtotime($sunset)) {
echo "erinnern:Es gibt noch Sonnenuntergang30Minute,Machen Sie sich bereit, auszugehen!\n";
} else {
echo "目前Es gibt noch Sonnenuntergang一段时间。\n";
}
?>
Im Skript geben wir zunächst den Breitengrad und Längengrad des Ortes an. Die Koordinaten von New York werden hier verwendet, aber Sie können sie nach Bedarf so ändern, dass sie überall koordiniert.
Wir erhalten die heutige Sonnenuntergangszeit durch die Funktion date_sunset () und formatieren Sie die Ausgabe mit sunfuncs_ret_string .
Anschließend berechnen wir 30 Minuten im Voraus eine Erinnerungszeit und vergleichen sie mit der aktuellen Zeit. Wenn die aktuelle Zeit in der Nähe der Sonnenuntergangszeit liegt, zeigt das Skript eine Erinnerungsnachricht an.
Damit dieses Skript automatisch ausgeführt und Benutzer jeden Tag erinnert, können wir die Aufgabenplanungstools des Betriebssystems (wie Cron unter Linux oder Task Scheduler unter Windows) verwenden, um dieses PHP -Skript regelmäßig auszuführen.
Angenommen, Sie speichern das Skript als sunset_reminder.php , können Sie einen Cron -Job einrichten, um dieses Skript regelmäßig auszuführen. Laufen Sie zum Beispiel jeden Tag um 18 Uhr:
0 18 * * * /usr/bin/php /path/to/sunset_reminder.php
Unterstützt verschiedene Positionen : Breitengrad und Länge können als Eingabeparameter festgelegt werden, sodass Benutzer die Koordinaten ihres Standorts eingeben können.
E-Mail-Erinnerung : Sie können PHP-Funktion () oder E-Mail-Dienst von Drittanbietern kombinieren, um E-Mail-Erinnerungen zu senden.
Diversifizierte Erinnerungsmethoden : Zusätzlich zur Befehlszeilenausgabe können Sie auch SMS, Desktop -Benachrichtigungen usw. senden, um die Benutzererfahrung zu verbessern.
Über die Funktion DATE_SUNSET () in PHP können wir die Sonnenuntergangszeit des angegebenen Ortes problemlos berechnen und Befehlszeilenskripte verwenden, um den Benutzern automatische Sonnenuntergangs -Erinnerungen zu bieten. Auf diese Weise können Sie die Skripte nicht nur flexibel entsprechend den tatsächlichen Bedürfnissen anpassen, sondern auch zeitgesteuerte Aufgaben kombinieren, um automatisierte Erinnerungen zu erreichen, wodurch Ihr Leben intelligenter wird.