Maison  >  Article  >  base de données  >  Comment convertir les dates « jj/mm/aaaa » dans les URL PHP au format « AAAA-MM-JJ » ?

Comment convertir les dates « jj/mm/aaaa » dans les URL PHP au format « AAAA-MM-JJ » ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-06 04:52:03353parcourir

How to Convert

Conversion du format de date dans les URL PHP

Dans un script PHP, vous rencontrez un problème lors de la conversion d'une date passée via une URL de "jj/mm/aaaa " au format "AAAA-MM-JJ".

Lorsque vous utilisez strtotime() pour analyser la date, il est crucial de garantir un format datetime valide. Le format "jj/mm/aaaa" que vous utilisez est interprété comme le format américain, avec les deux premiers chiffres indiquant le mois, suivis du jour et de l'année.

Cependant, lorsque vous passez des dates qui peuvent être ambigu (par exemple, 12/04/2017 ou 04/12/2017), strtotime() peut donner des résultats inattendus car il suppose que le mois vient en premier.

Pour éviter ces problèmes, il est recommandé d'utiliser DateTime :: createFromFormat() pour analyser la date et renvoyer un objet DateTime(). Cet objet vous permet de convertir la date dans différents formats ou de récupérer un horodatage Unix.

Dans votre cas, le code suivant réussira à convertir la date :

<code class="php">$date = DateTime::createFromFormat('m/d/Y', '20/02/2000');
$D->query = $date->format('Y-m-d'); // Outputs: 2000-02-20</code>

De plus, voici quelques conseils pour éviter des problèmes similaires :

  • Utilisez DateTime::createFromFormat() pour analyser les dates avec des formats spécifiques.
  • Comprenez les ambiguïtés potentielles lors de l'utilisation de strtotime() avec des formats de date ambigus.
  • Voir la documentation PHP sur DateTime et DateTime::createFromFormat() pour plus d'informations.

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