Position actuelle: Accueil> Derniers articles> Comment obtenir l'heure actuelle en combinaison avec la fonction temporelle

Comment obtenir l'heure actuelle en combinaison avec la fonction temporelle

gitbox 2025-05-26

Dans la programmation PHP, nous devons parfois obtenir le temps standard de Greenwich actuel (GMT), également connu sous le nom de temps universel coordonné (UTC). PHP fournit une combinaison très pratique de méthodes: la fonction gmdate () et la fonction Time () peuvent facilement réaliser cette exigence.

1. Introduction à gmdate () et time ()

  • gmdate () : similaire à date () , mais renvoie l'heure GMT, pas l'heure locale.

  • Time () : Renvoie l'horodatage actuel depuis l'ère Unix (00:00:00 GMT le 1er janvier 1970).

En combinant ces deux fonctions, vous pouvez obtenir le temps GMT actuel.

2. Exemples de code

 <?php
echo gmdate("Y-m-d H:i:s", time());
?>

Ce code sortira une chaîne de temps GMT similaire au format suivant:

 2025-05-22 07:45:30

3. Description du paramètre

  • "YMD H: I: S" est un format de date et de temps couramment utilisé en PHP, représentant les heures-date de l'année: Minutes: secondes.

  • Time () Renvoie l'horodatage Unix actuel.

  • GMDate () reçoit cet horodatage et formate l'heure selon la norme GMT.

4. Scénarios d'application pratiques

  1. Enregistrement de données de la zone inter-temps : Dans les applications internationales, l'utilisation unifiée du temps GMT permet d'éviter la confusion des données causée par les différences de fuseau horaire.

  2. Système de journal : de nombreux journaux système utilisent le format de temps GMT, ce qui facilite le traitement unifié et la comparaison du système.

  3. Exigences d'horodatage de l'API : certaines API nécessitent des horodatages pour être le temps GMT, en particulier lors de la vérification de la signature sécurisée.

5. Comparer Date () et Gmdate ()

Certains développeurs sont enclins à confondre date () et gmdate () . La principale différence entre les deux est le fuseau horaire:

 <?php
echo "Local time: " . date("Y-m-d H:i:s") . "\n";
echo "GMT time: " . gmdate("Y-m-d H:i:s") . "\n";
?>

Si le fuseau horaire de votre serveur est défini sur le huitième district est (comme la Chine), la production peut être la suivante:

 Local time: 2025-05-22 15:45:30
GMT time: 2025-05-22 07:45:30

6. supplémentaire: Obtenez un temps milliseconde (avec GMT)

Bien que GMDate () ne prenne pas directement en charge les millisecondes, il peut être implémenté via MicroTime () . Par exemple:

 <?php
$micro = microtime(true);
$seconds = floor($micro);
$milliseconds = round(($micro - $seconds) * 1000);
echo gmdate("Y-m-d H:i:s", $seconds) . ".$milliseconds GMT";
?>

La sortie est similaire:

 2025-05-22 07:45:30.123 GMT

7. Conseils

  • Si le programme PHP que vous déploiez doit utiliser l'heure GMT uniformément, vous pouvez définir le fuseau horaire par défaut sur UTC:

 <?php
date_default_timezone_set('UTC');
?>

Cependant, l'utilisation de Date () pour le moment renverra également l'heure GMT, vous n'avez donc plus besoin d'utiliser gmdate () .

8. Conclusion

En combinant GMDate () et Time () , vous pouvez obtenir le temps GMT actuel très commodément en PHP. Cette méthode est très pratique dans le traitement des zones inter-temps, la journalisation unifiée et le développement côté serveur. Il s'agit sans aucun doute d'une compétence qui mérite d'être maîtrisée pour les développeurs PHP qui ont besoin d'un contrôle précis de la sortie temporelle.

Pour des références de code plus pratiques, veuillez visiter:
https://gitbox.net/snippets/php-gmtime