Wie benutze ich die Funktionen date_sunset () und time (), um Countdown in Sunset zu implementieren?
In PHP können wir die Funktion date_sunset () verwenden, um die Zeit des Sonnenuntergangs zu erhalten und die Funktion Time () zu kombinieren, um eine Countdown -Funktion zu implementieren. In diesem Artikel wird angezeigt, wie Sie den Unterschied zwischen der aktuellen Zeit und der Sonnenuntergangszeit durch diese beiden Funktionen erhalten, um den Effekt des Countdowns auf Sonnenuntergang zu erreichen.
Mit der Funktion date_sunset () wird die Sonnenuntergangszeit des angegebenen Ortes abgerufen. Das zurückgegebene Zeitformat ist ein Unix -Zeitstempel, der die Anzahl der Sekunden seit dem 1. Januar 1970 angibt. Durch diese Funktion können wir die spezifische Sonnenuntergangszeit basierend auf dem Breitengrad und Längengrad erhalten.
Funktionsprototyp:
date_sunset(time, format, latitude, longitude, zenith, dst)
Zeit : Die angegebene Zeit, Standardeinstellung ist die aktuelle Zeit (der Unix -Zeitstempel der aktuellen Zeitzeit kann mit der Funktion Time () erhalten werden).
Format : Das Ausgangsformat kann Folgendes sein:
Sunfuncs_ret_string : Gibt die formatierte Zeitzeichenfolge zurück.
Sunfuncs_ret_timestamp : Gibt Unix Timestamp zurück.
Breite : Breitengrad.
Länge : Länge.
Zenith : Der Zenith -Winkel der Sonne, standardmäßig 50 Grad.
DST : Ob bei Tageslicht die Sparzeit berücksichtigt wird, beträgt der Standardwert -1 (automatisch berechnet).
Die Zeit () -Funktion () wird verwendet, um den aktuellen Unix -Zeitstempel zu erhalten, dh die Anzahl der Sekunden von 00:00:00 UTC am 1. Januar 1970 bis zur aktuellen Zeit. Beim Countdown können wir die aktuelle Zeit über die Zeit () erhalten und sie mit der Sonnenuntergangszeit vergleichen.
Funktionsprototyp:
time()
Gibt den UNIX -Zeitstempel der aktuellen Zeit zurück.
Um den Countdown in Sunset -Funktion zu implementieren, können wir die folgenden Schritte ausführen:
Holen Sie sich die aktuelle Zeit.
Holen Sie sich die Sonnenuntergangszeit.
Berechnen Sie die Differenz zwischen der Stromzeit und der Sonnenuntergangszeit.
Umwandeln Sie den Unterschied in Formate Stunden, Minuten und Sekunden.
<?php
// Setzen Sie Breitengrad und Längengrad,Angenommen, wir verwenden den Breitengrad und die Länge von Shanghai
$latitude = 31.2304; // Shanghais Breite
$longitude = 121.4737; // Länge von Shanghai
// Holen Sie sich die aktuelle Zeit
$current_time = time();
// Holen Sie sich die Sonnenuntergangszeit,Der Rückgabewert istUNIXZeitstempel
$sunset_time = date_sunset($current_time, SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);
// Berechnen Sie den Unterschied im Countdown
$time_diff = $sunset_time - $current_time;
// Sekunden bis Stunden konvertieren、Minute、Zweite
$hours = floor($time_diff / 3600);
$minutes = floor(($time_diff % 3600) / 60);
$seconds = $time_diff % 60;
// Ausgabe Countdown
echo "Es gibt noch Sonnenuntergang " . $hours . " Stunde " . $minutes . " Minute " . $seconds . " Zweite";
?>
Zuerst definieren wir den Breitengrad und Längengrad von Shanghai bei 31.2304, 121.4737 . Sie können den Breitengrad und die Länge anderer Städte entsprechend Ihren Bedürfnissen ersetzen.
Verwenden Sie Time () , um den aktuellen Unix -Zeitstempel zu erhalten.
Rufen Sie DATE_SUNSET () an, um die Sonnenuntergangszeit des angegebenen Ortes zu erhalten, und gibt einen Unix -Zeitstempel zurück.
Berechnen Sie die Differenz zwischen der aktuellen Zeit und der Sonnenuntergangszeit und wandeln Sie die Differenz in Stunden, Minuten und Sekunden um.
Schließlich Informationen aus der Ausgabe von Countdown -Informationen.
Die bis date_sunset () zurückgegebene Zeit beträgt die UTC -Zeit, während Time () die lokale Zeit zurückgibt, sodass Sie sicherstellen müssen, dass die Zeitzone konsistent ist. Bei Bedarf können Sie date_default_timezone_set () verwenden, um die Zeitzone festzulegen.
Die Countdown -Funktion basiert auf der Genauigkeit von Breitengrad und Längengrad, um sicherzustellen, dass Sie die korrekten Breiten- und Längengrad -Daten übergeben.
Wenn Sie die Sonnenuntergangszeit basierend auf einem bestimmten Datum berechnen müssen, können Sie den Zeitparameter von DATE_SUNSET () auf einen bestimmten Datum und Zeitstempel festlegen. Zum Beispiel:
$custom_date = strtotime('2025-04-26 12:00:00'); // Legen Sie das angegebene Datum und die angegebene Uhrzeit fest
$sunset_time = date_sunset($custom_date, SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);
Auf diese Weise können Sie die Sonnenuntergangszeit einer Zukunft oder am vergangenen Tag flexibel berechnen.
Ich hoffe, dieser Artikel wird Ihnen hilfreich sein und Ihnen helfen, zu verstehen, wie Sie die Funktionen date_sunset () und time () in PHP verwenden, um Countdown in Sunset zu implementieren. Wenn Sie Fragen haben, können Sie bitte eine Nachricht zum Besprechen hinterlassen!