Position actuelle: Accueil> Derniers articles> Utilisez GMDATE pour sortir les dates au format RFC 2822

Utilisez GMDATE pour sortir les dates au format RFC 2822

gitbox 2025-05-27

Exemple de génération de date au format RFC 2822 à l'aide de GMDate

 <?php
// utiliser gmdate Générer une conformité RFC 2822 Chaîne de format de temps
$date = gmdate("D, d M Y H:i:s") . " +0000";

echo $date;
?>

Dans le code ci-dessus, nous utilisons gmdate ("d, d myh: i: s") pour générer la pièce de temps, puis ajouter manuellement +0000 pour représenter le décalage du fuseau horaire UTC. Notez que le temps renvoyé par GMDate lui-même est l'heure standard de Greenwich, donc le fuseau horaire doit être +0000 .


Pourquoi ne puis-je pas utiliser directement des caractères O -format?

O représente le décalage de l'heure locale par rapport à GMT. Si vous utilisez gmdate ("d, d myh: i: s o") , le résultat sera +0000 , mais si vous utilisez la date ("d, d myh: i: s o") , ce sera le décalage du fuseau horaire local de votre serveur.

Cependant, la fonction GMDate ne prend pas en charge le symbole de décalage du fuseau horaire O , et il renverra +0000 par défaut lorsqu'il est utilisé. À l'heure actuelle, il est généralement recommandé d'ajouter manuellement +0000 par épissage de chaîne.


Recommandé d'utiliser la classe DateTime

Bien que GMDate puisse sortir le format RFC 2822 de base, il est recommandé d'utiliser la classe DateTime intégrée de PHP avec DateTimeZone pour générer une date de format RFC 2822 standard et correcte:

 <?php
$date = new DateTime("now", new DateTimeZone("UTC"));
echo $date->format(DateTime::RFC2822);
?>

Ce code traite automatiquement tous les détails du format et du fuseau horaire, renvoyant une chaîne de temps conforme aux normes RFC 2822.


Résumer

  • Lorsque vous utilisez GMDATE , la pièce de fuseau horaire doit être ajoutée manuellement +0000 .

  • GMDate ne prend pas en charge la mise en forme directe du symbole de décalage du fuseau horaire O.

  • Il est également recommandé d'utiliser la classe DateTime pour générer un format de temps conforme à RFC 2822.

  • Le format standard de RFC 2822 est D, D Myh: i: S o , par exemple: jeu, 23 mai 2025 08:30:00 +0000 .

Si vous devez accéder à une documentation plus officielle sur les fonctions de date de PHP, vous pouvez vous référer à:

 // Exemple de lien:php.net Page de fonction de date(Le nom de domaine a été remplacé)
echo "https://gitbox.net/manual/en/function.gmdate.php";

Cela vous permet de localiser rapidement l'utilisation détaillée.