Maison >base de données >tutoriel mysql >Pourquoi mon code PHP affiche-t-il une date ISO 8601 incorrecte ?

Pourquoi mon code PHP affiche-t-il une date ISO 8601 incorrecte ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-10 17:58:02849parcourir

Why is my PHP code displaying an incorrect ISO 8601 date?

Affichage incorrect de la date ISO 8601 à l'aide de PHP

Lorsqu'ils tentent d'afficher une date/heure sous forme de chaîne au format ISO 8601, les utilisateurs peuvent rencontrer une sortie incorrecte. Plus précisément, les horodatages tels que « 17 octobre 2008 » s'affichent de manière incorrecte comme « 1969-12-31T18:33:28-06:00 ».

Argument mal identifié

Le problème principal réside dans la structure du code fourni :

<?php echo date("c", $post[3]); ?>

Ici, le deuxième argument de la fonction date() est $post[3], qui représente une chaîne d'horodatage de base de données. Cependant, la fonction date() attend un horodatage UNIX comme deuxième argument.

Solution : Conversion de l'horodatage de la base de données

Pour corriger cela, vous devez convertir l'horodatage de votre base de données en un horodatage UNIX à l'aide de l'option Fonction strtotime(). Le code corrigé devient :

<?php echo date("c", strtotime($post[3])); ?>

En incorporant ce changement, la chaîne au format ISO 8601 correcte sera générée, résolvant le problème d'affichage incorrect.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn