Wie kombinieren Sie Cron Timing -Skripte, um die Sonnenuntergangszeit regelmäßig mit dem Date_Sunset von PHP zu überschreiten?
Bei der Entwicklung einiger zeitbasierter Push-Systeme verwenden wir häufig Zeitaufgaben, um einige Vorgänge automatisch durchzuführen. Zum Beispiel können wir regelmäßig die Sonnenuntergangszeit eines bestimmten Bereichs erhalten und an die angegebene Schnittstelle oder Benutzer weitergeben. In diesem Artikel wird die Funktion von PHP in Kombination mit Cron -Timing -Aufgaben verwendet, um die Funktion der regelmäßigen Übergabe der Sonnenuntergangszeit jeden Tag zu erkennen.
Zunächst müssen wir die Funktion von PHP verwenden, um die Sonnenuntergangszeit zu erhalten. Diese Funktion nimmt Parameter wie Breitengrad, Längengrad und Zeitstempel an und gibt die Sonnenuntergangszeit zurück.
<?php
// Legen Sie die Zeitzone fest
date_default_timezone_set('Asia/Shanghai');
// Breitengrad und Länge definieren
$latitude = 39.9042; // Pekings Breite
$longitude = 116.4074; // Länge in Peking
// Holen Sie sich die Sonnenuntergangszeit(von Unix Zeitstempel kehrt zurück)
$sunset = date_sunset(time(), SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);
// Formatieren Sie die Sonnenuntergangszeit in ein lesbares Format
$sunset_time = date("Y-m-d H:i:s", $sunset);
echo "Die heutige Sonnenuntergangszeit: " . $sunset_time;
?>
Wir möchten die Sonnenuntergangszeit regelmäßig täglich überschreiten, daher müssen wir die zeitgesteuerte Cron -Aufgabe verwenden, um dieses PHP -Skript auszuführen.
Wir haben bereits PHP -Code, um die Sonnenuntergangszeit zu erhalten, und müssen diesen Code in ein PHP -Skript wie send_sunset_time.php schreiben. Sie können dem Skript den Code für Push -Code hinzufügen, um die Sonnenuntergangszeit zur angegebenen URL zu schieben.
<?php
// Legen Sie die Zeitzone fest
date_default_timezone_set('Asia/Shanghai');
// Breitengrad und Länge definieren
$latitude = 39.9042;
$longitude = 116.4074;
// Holen Sie sich die Sonnenuntergangszeit
$sunset = date_sunset(time(), SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);
$sunset_time = date("Y-m-d H:i:s", $sunset);
// Schieben Sie die Sonnenuntergangszeit in die angegebene URL(Nehmen Sie das an API Schnittstelle)
$api_url = 'https://m66.net/api/send_sunset_time'; // Ersetzen Sie durch Ihr Tatsächlich URL
$data = array(
'sunset_time' => $sunset_time
);
// verwenden cURL schicken POST fragen
$ch = curl_init($api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$response = curl_exec($ch);
curl_close($ch);
if ($response) {
echo "Die Sonnenuntergangszeit wurde erfolgreich geschoben: " . $sunset_time;
} else {
echo "Push fehlgeschlagen";
}
?>
Cron ist ein zeitgesteuerter Aufgabenplaner unter Linux -System. Wir können die PHP -Skripte so festlegen, dass sie jeden Tag ausgeführt werden, indem wir Crontab bearbeiten.
Öffnen Sie die Crontab -Datei:
crontab -e
Fügen Sie eine Zeile hinzu, um das Skript so festzulegen, dass er jeden Tag zu einem bestimmten Zeitpunkt ausgeführt wird (z. B. jeden Tag um 18 Uhr):
0 18 * * * /usr/bin/php /path/to/your/script/send_sunset_time.php
Die Bedeutung dieser Befehlszeile lautet: Führen Sie jeden Tag das Skript send_sunset_time.php um 18:00 aus.
Speichern und beenden Sie die Crontab -Datei, und die zeitgesteuerte Aufgabe wird wirksam.
In den obigen Schritten haben wir die Verwendung von PHP implementiert, um die Sonnenuntergangszeit zu erhalten und diese Zeit durch die Cron -Timing -Aufgabe zur angegebenen URL zu bringen.
Jedes Mal, wenn das System ausgeführt wird, erhält das System automatisch die Sonnenuntergangszeit des aktuellen Datums und drückt es in die URL (im obigen Code wurde die URL durch M66.NET ersetzt). Dies kann uns helfen, die Sonnenuntergangszeit des Tages regelmäßig in das entsprechende System zu bringen.
Durch die Funktion von PHP können wir die Sonnenuntergangszeit problemlos erhalten. In Kombination mit der Cron -Timing -Aufgabe können wir diese Informationen jeden Tag zu einem festen Zeitpunkt drücken. Diese Methode kann in zeitbasierten Push-Systemen wie Wettervorhersagen, Sonnenaufgang und Sonnenuntergang erinnert werden, usw.