Dans de nombreuses religions, en particulier l'islam et le judaïsme, il est crucial d'établir un calendrier pour la prière et le jeûne. PHP fournit une fonction intégrée date_sunset () , qui peut facilement calculer l'heure du coucher du soleil de la journée en fonction de l'emplacement et de la date géographiques. Cet article expliquera en détail comment utiliser la fonction date_sunset () pour vous aider à générer des rappels de prière précis, en particulier pendant les jours de jeûne (comme le Ramadan ou le Jour de l'expiation).
DATE_SUNSET () est l'une des fonctions de date / heure de PHP, utilisée pour calculer l'heure du coucher du soleil d'une date et d'une position données. Sa syntaxe de base est la suivante:
date_sunset(
int $timestamp,
int $format = SUNFUNCS_RET_STRING,
?float $latitude = null,
?float $longitude = null,
?float $zenith = null,
?float $gmt_offset = null
): string|int|float|false
dans:
$ horodatage : la date du coucher du soleil doit être calculée (exprimée en horodat)
$ Format : Renvoie le format (chaîne, entier ou numéro de point flottant)
$ latitude et $ longitude : latitude et longitude de l'emplacement géographique
$ zenith : angle zenith (utilisez généralement la valeur par défaut)
$ GMT_OFFSET : Création horaire par rapport à GMT (unité: heures)
Voici un exemple simple, en supposant que vous souhaitez obtenir le temps de coucher du soleil au Caire (latitude 30.0444, longitude 31.2357) le 26 avril 2025 et l'afficher comme heure locale (GMT + 2):
<?php
date_default_timezone_set('Africa/Cairo');
// Date de fixation
$date = '2025-04-26';
$timestamp = strtotime($date);
// Configurer un emplacement géographique
$latitude = 30.0444;
$longitude = 31.2357;
// Calculez l'heure du coucher du soleil
$sunset_time = date_sunset(
$timestamp,
SUNFUNCS_RET_STRING, // Renvoie le format en tant que chaîne,comme "18:30"
$latitude,
$longitude,
90, // Angle de zénith par défaut
2 // GMTCompenser(Caire pourGMT+2)
);
echo "exister $date Le temps de coucher du soleil est:$sunset_time";
?>
Exemple de sortie :
exister 2025-04-26 Le temps de coucher du soleil est:18:29
De cette façon, vous pouvez rappeler à l'utilisateur l'heure de fin du jeûne à travers le programme le jour de jeûne.
Vous pouvez encore combiner l'envoi de messages texte ou les notifications push pour réaliser des rappels automatiques. Par exemple, utilisez une demande de GET simple pour appeler l'interface (en supposant que votre interface de serveur est https://m66.net/api/send-lert ):
<?php
// Envoyer un rappel de coucher de soleil
function sendSunsetAlert($sunset_time) {
$url = "https://m66.net/api/send-alert?time=" . urlencode($sunset_time);
file_get_contents($url);
}
// Exemple d'utilisation
sendSunsetAlert($sunset_time);
?>
Ce code demandera silencieusement l'interface m66.net en arrière-plan, déclenchant un rappel de prière.
Le réglage du fuseau horaire est très important , vous devez utiliser date_default_timezone_set () pour le définir correctement, sinon le résultat peut être très dévié.
La latitude et la longitude doivent être exactes , sinon il y aura des erreurs dans le temps de coucher du soleil.
Si vous souhaitez vous adapter à l'emplacement géographique de différents utilisateurs, vous pouvez automatiquement obtenir l'emplacement de l'utilisateur en combinaison avec la géolocalisation IP (par exemple, en utilisant https://m66.net/api/ip-location ).
Utilisez la fonction date_sunset () pour calculer avec précision l'heure du coucher du soleil en fonction de la date et de l'emplacement géographique, qui est très adapté pour faire des rappels rapides, des invites de temps de prière et d'autres fonctions. Avec des demandes d'interface simples, des rappels automatisés peuvent être réalisés, offrant aux utilisateurs une expérience plus prévenante.