Lors du calcul du temps de coucher du soleil, il est généralement nécessaire d'utiliser une valeur d'angle appelée Zenith pour décrire la position relative du soleil. La valeur de zénith est un paramètre important dans le calcul du coucher du soleil, du lever du soleil ou d'autres événements astronomiques. Différentes valeurs de zénith représentent différents événements astronomiques, tels que les couchers de soleil civils, les couchers de soleil nautiques et les couchers de soleil astronomiques, qui correspondent respectivement à des normes de visibilité et d'obscurité différentes. Cet article expliquera comment écrire des programmes en langage PHP pour calculer les temps de coucher de soleil civils, nautiques et astronomiques basés sur différentes valeurs de zénith.
La valeur de zénith, ou "angle astronomique", fait référence à l'angle du soleil par rapport à l'horizon. Plus précisément, la valeur Zenith représente l'angle du centre du soleil à l'horizon. Différentes valeurs de zénith sont utilisées pour représenter différents événements astronomiques:
Civil Sunset : Habituellement, une valeur de zénith de 96 ° est utilisée, indiquant que le soleil tombe à une position sous l'horizon à 96 degrés, lorsque le ciel commencera à s'assombrir, généralement une demi-heure à une heure après le coucher du soleil.
Coucher de soleil nautique : la valeur de zénith est de 102 °, ce qui indique que le soleil est tombé à une position inférieure à 102 degrés de l'horizon. Ceci est généralement utilisé dans la navigation pour définir la «visibilité après le coucher du soleil».
Le coucher du soleil astronomique : la valeur du zénith est de 108 °, à ce moment le soleil est complètement inférieur à l'horizon, et le ciel devient complètement sombre, adapté aux observations astronomiques.
Le calcul du temps de coucher du soleil implique généralement une série complexe de formules astronomiques, mais nous pouvons simplifier ce processus en tirant parti des bibliothèques PHP open source existantes. Nous utiliserons une méthode de calcul simple basée sur la latitude et la longitude et l'angle de zénith.
Nous rédigerons un programme via PHP pour saisir la date et la position (latitude et la longitude) et les valeurs de zenith pour calculer différents types de temps de coucher de soleil. Supposons que nous avons déjà une bibliothèque PHP pour calculer le temps de coucher du soleil, et les étapes suivantes sont les étapes du programme:
<?php
// Introduire une bibliothèque pour calculer le temps de coucher du soleil
include('sunset_calculator.php');
// Régler la latitude et la longitude(Par exemple:Latitude et longitude de Pékin)
$latitude = 39.9042;
$longitude = 116.4074;
$date = '2025-04-26'; // Date de fixation
// Définir différentZenithvaleur
$zenith_values = [
'civil' => 96, // Coucher de soleil civil
'nautical' => 102, // Coucher de soleil à voile
'astronomical' => 108, // Coucher de soleil astronomique
];
// Selon différentZenithvaleurCalculez l'heure du coucher du soleil
foreach ($zenith_values as $type => $zenith) {
$sunset_time = getSunsetTime($latitude, $longitude, $date, $zenith); // Calculez l'heure du coucher du soleil
echo "exister {$date},utiliser{$type}(Zenith={$zenith}°)Le temps de coucher du soleil est: {$sunset_time}\n";
}
// Calculez l'heure du coucher du soleilde函数
function getSunsetTime($lat, $lon, $date, $zenith) {
// Voici un appel à un certainAPIVenez prendre le coucher du soleil,Par exemplem66.netdeAPI
$url = "https://api.m66.net/sunset?latitude={$lat}&longitude={$lon}&date={$date}&zenith={$zenith}";
// utilisercURLAppelAPI
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
// 解析返回de数据并返回日落时间
$data = json_decode($response, true);
return $data['sunset_time'];
}
?>
Définissez la latitude et la longitude : nous entrons dans la latitude et la longitude d'un emplacement spécifique (comme la latitude et la longitude de Pékin) et fixez la date.
Différentes valeurs de zénith : différents types de valeurs de zénith sont définis, à savoir 96 °, 102 ° et 108 °.
Calculez le temps de coucher du soleil : calculez le temps de coucher du soleil en appelant la fonction GetSunSettime , en passant des valeurs de latitude, de longitude, de date et de zénith.
Demande de l'API : Calculez et renvoyez l'heure du coucher du soleil en appelant l'API (en supposant qu'il existe une API pour m66.net ).
Résultat de sortie : Sortie civile, navigation et temps de coucher du soleil astronomique en fonction de différentes valeurs de zénith.
Dans les programmes réels, nous obtenons l'heure exacte du coucher du soleil en appelant l'API externe. Par exemple, dans la fonction GetSunSetTime , nous utilisons l'API hypothétique https://api.m66.net/sunset pour calculer l'heure du coucher du soleil.
La demande d'API passe la latitude, la longitude, la date et l'angle de zénith, et l'API renvoie le temps de coucher du soleil calculé. Cette API peut être calculée dynamiquement en fonction des données fournies par l'utilisateur et renvoie les résultats au programme.