Position actuelle: Accueil> Derniers articles> Construisez un script de rappel Sunset en utilisant date_sunset () dans PHP CLI

Construisez un script de rappel Sunset en utilisant date_sunset () dans PHP CLI

M66 2025-05-31

Dans PHP, la fonction date_sunset () nous permet de calculer l'heure du coucher du soleil d'un emplacement spécifié. En utilisant cette fonction, il est facile de créer un script de rappel automatique qui informera l'utilisateur à l'approche du Sunset Time. Cet article expliquera comment utiliser cette fonction dans la CLI PHP (interface de ligne de commande).

1. Préparation environnementale

Avant de commencer, assurez-vous que votre système a installé PHP et que vous pouvez exécuter des scripts PHP à partir de la ligne de commande. S'il n'est pas installé, vous pouvez l'installer en visitant le site officiel de PHP ou en utilisant l'outil de gestion des packages.

2. Utilisez la fonction date_sunset ()

La fonction date_sunset () est utilisée pour renvoyer l'heure du coucher du soleil de l'emplacement spécifié. Il nécessite les paramètres suivants:

  • Timestamp : horodatage, date et heure indiquant.

  • Format : le format qui renvoie le résultat, généralement date_rfc822 ou date_atom .

  • Latitude : latitude.

  • Longitude : longitude.

  • Zenith : l'angle d'altitude astronomique au coucher du soleil (généralement en utilisant 90,5 , c'est-à-dire le soleil coule complètement).

  • GMT_Offset : décalage du fuseau horaire (en heures).

La syntaxe de base d'une fonction est la suivante:

 date_sunset(time(), SUNFUNCS_RET_STRING, $latitude, $longitude, $zenith, $gmt_offset);

3. Construisez le script

Voici un exemple de script qui montre comment créer un simple script de rappel de coucher de soleil à l'aide de la fonction date_sunset () :

 <?php

// Obtenez l&#39;heure du coucher du soleil de l&#39;emplacement actuel
$latitude = 40.7128;  // Latitude de New York
$longitude = -74.0060; // Longitude à New York

// Obtenez l&#39;horodatage de l&#39;heure actuelle
$timestamp = time();

// Obtenez l&#39;heure du coucher du soleil
$sunset = date_sunset($timestamp, SUNFUNCS_RET_STRING, $latitude, $longitude, 90.5, -5);

// Temps de coucher de soleil
echo "Le temps du coucher du soleil d&#39;aujourd&#39;hui est:$sunset\n";

// Définir l&#39;heure du rappel(Par exemple,à l&#39;avance30Rappel)
$reminderTime = strtotime($sunset) - 30 * 60;  // à l&#39;avance30minute

// Obtenez l&#39;heure actuelle
$currentTime = time();

// Vérifiez si l&#39;heure actuelle est proche de l&#39;heure du rappel
if ($currentTime >= $reminderTime && $currentTime < strtotime($sunset)) {
    echo "rappeler:Il y a encore du coucher du soleil30minute,Préparez-vous à sortir!\n";
} else {
    echo "目前Il y a encore du coucher du soleil一段时间。\n";
}

?>

4. Explication du script

  • Dans le script, nous spécifions d'abord la latitude et la longitude de l'emplacement. Les coordonnées de New York sont utilisées ici, mais vous pouvez les modifier pour les coordonnées n'importe où au besoin.

  • Nous obtenons l'heure du coucher du soleil d'aujourd'hui via la fonction date_sunset () et forma la sortie à l'aide de sunfuncs_ret_string .

  • Nous calculons ensuite un temps de rappel 30 minutes à l'avance et le comparons avec l'heure actuelle. Si l'heure actuelle est proche du coucher du soleil, le script affichera un message de rappel.

5. Exécutez le script régulièrement

Pour que ce script s'exécute automatiquement et rappelle les utilisateurs chaque jour, nous pouvons utiliser les outils de planification des tâches du système d'exploitation (tels que Cron sur Linux ou Task Scheduler sur Windows) pour exécuter ce script PHP régulièrement.

En supposant que vous enregistrez le script sous Sunset_reminder.php , vous pouvez configurer un travail cron pour exécuter ce script régulièrement. Par exemple, courez tous les jours à 18 h:

 0 18 * * * /usr/bin/php /path/to/sunset_reminder.php

6. Optimisation supplémentaire

  • Prend en charge différentes positions : la latitude et la longitude peuvent être définies sous forme de paramètres d'entrée, permettant aux utilisateurs de saisir les coordonnées de leur emplacement.

  • Rappel par e-mail : vous pouvez combiner la fonction PHP Mail () ou le service de messagerie tiers pour envoyer des rappels par e-mail.

  • Méthodes de rappel diversifiées : En plus de la sortie de la ligne de commande, vous pouvez également envoyer des SMS, des notifications de bureau, etc. pour améliorer l'expérience utilisateur.

Résumer

Grâce à la fonction date_sunset () dans PHP, nous pouvons facilement calculer l'heure du coucher du soleil de l'emplacement spécifié et utiliser des scripts de ligne de commande pour fournir aux utilisateurs des rappels de coucher de soleil automatique. De cette façon, vous pouvez non seulement ajuster les scripts en fonction des besoins réels, mais également combiner des tâches chronométrées pour réaliser des rappels automatisés, ce qui rend votre vie plus intelligente.