W3docs

date_sunrise()

La fonction date_sunrise() de PHP calcule l'heure du lever du soleil pour une date et un lieu donnés. Dépréciée en PHP 5.2, supprimée en PHP 8.0.

L'importance de la fonction PHP date_sunrise()

Remarque : La fonction date_sunrise() a été dépréciée dans PHP 5.2.0 et supprimée dans PHP 8.0.0. Le contenu ci-dessous est fourni uniquement pour les versions antérieures de PHP.

PHP est un langage de programmation largement utilisé, couramment employé pour créer des applications web dynamiques. La fonction date_sunrise() est l'une des nombreuses fonctions intégrées disponibles en PHP. Elle permet de calculer l'heure du lever du soleil pour une date et un lieu donnés.

La fonction date_sunrise() est un outil essentiel pour les développeurs qui créent des applications nécessitant les heures de lever du soleil. Cette fonction peut calculer l'heure du lever du soleil pour n'importe quel endroit sur Terre, en fonction de sa latitude et de sa longitude.

Syntaxe

date_sunrise(
    int $timestamp,
    int $returnFormat = SUNFUNCS_RET_STRING,
    ?float $latitude = null,
    ?float $longitude = null,
    ?float $zenith = null,
    ?float $utcOffset = null
): string|int|float|false

Comment utiliser la fonction PHP date_sunrise()

La fonction date_sunrise() prend un paramètre obligatoire et jusqu'à cinq paramètres optionnels.

ParamètreDescription
timestampL'horodatage Unix du jour pour lequel vous souhaitez l'heure du lever du soleil.
returnFormatL'une des constantes SUNFUNCS_RET_STRING (une chaîne hh:mm), SUNFUNCS_RET_DOUBLE (les heures sous forme de float), ou SUNFUNCS_RET_TIMESTAMP (un horodatage Unix).
latitudeLatitude en degrés. Par défaut, la valeur du paramètre INI date.default_latitude.
longitudeLongitude en degrés. Par défaut, la valeur du paramètre INI date.default_longitude.
zenithL'angle entre le centre du soleil et l'horizon. Par défaut, date.sunrise_zenith (90°50′).
utcOffsetDécalage par rapport à l'UTC en heures. Utilisé uniquement avec SUNFUNCS_RET_STRING et SUNFUNCS_RET_DOUBLE.

Valeur de retour : l'heure du lever du soleil dans le returnFormat choisi, ou false en cas d'échec (par exemple dans les régions polaires où le soleil ne se lève pas ce jour-là).

Pour utiliser la fonction, commencez par obtenir les coordonnées de latitude et de longitude du lieu qui vous intéresse — des outils en ligne tels que Google Maps ou GeoNames facilitent cette démarche. Appelez ensuite date_sunrise() avec ces coordonnées, et la fonction retourne l'heure du lever du soleil pour le lieu et la date indiqués.

La fonction complémentaire date_sunset() calcule les heures de coucher du soleil avec une signature identique.

Exemples d'utilisation de la fonction PHP date_sunrise()

Voici quelques exemples d'utilisation de la fonction date_sunrise() :

Exemple 1 : Calcul de l'heure du lever du soleil pour aujourd'hui à un emplacement spécifique

php— editable, runs on the server

Exemple 2 : Calcul de l'heure du lever du soleil pour une date spécifique à un emplacement précis. Ici, strtotime() convertit une date lisible en horodatage Unix attendu par date_sunrise().

<?php
// Note: date_sunrise() was removed in PHP 8.0.0. This code is for legacy PHP versions only.
$date = "2023-03-03";
$timestamp = strtotime($date);
$latitude = 40.7128; // New York City latitude
$longitude = -74.0060; // New York City longitude
$zenith = ini_get("date.sunrise_zenith");
$sunrise_time = date_sunrise($timestamp, SUNFUNCS_RET_STRING, $latitude, $longitude, $zenith);

if ($sunrise_time !== false) {
    echo "The sunrise time for New York City on $date is $sunrise_time.";
} else {
    echo "Failed to calculate sunrise time.";
}
?>

Alternatives modernes pour PHP 8+

Depuis que PHP 8.0 a supprimé les calculs astronomiques intégrés, les applications modernes s'appuient généralement sur des bibliothèques dédiées ou des API externes. Les approches courantes incluent :

  • Les packages Composer tels que geo-sun ou sunrise-sunset pour des calculs locaux sans dépendances externes.
  • Les API externes comme Sunrise-Sunset.org ou Open-Meteo pour des données fiables et à jour, sans avoir à maintenir d'algorithmes locaux.

Diagramme Mermaid : Processus de calcul du lever du soleil

graph LR;
    A[Enter latitude and longitude coordinates] --> B{Call date_sunrise() function};
    B -- Returns the sunrise time --> C[Display sunrise time];

Conclusion

En résumé, la fonction date_sunrise() calcule l'heure du lever du soleil pour un lieu et une date donnés sur les versions PHP antérieures. Étant donné qu'elle a été supprimée dans PHP 8.0, les projets modernes doivent recourir à un package Composer ou à une API externe. Pour la gestion des dates et des heures, consultez également date(), mktime() et date_default_timezone_set().

Entraînement

Pratique
Que fait la fonction date_sunrise() en PHP ?
Que fait la fonction date_sunrise() en PHP ?
Was this page helpful?