par
@rthur » 12 févr. 2015, 17:35
Une solution élégante est d'utiliser la fonction
date_create_from_format() qui permet de préciser justement le format dans lequel est ta date en entrée pour éviter les confusions entre format anglo-saxon et format français.
<?php
$date_originale="05/02/2015";
$timestamp_strtotime=strtotime($date_originale);
echo date("d M Y", $timestamp_strtotime);
// Va renvoyer le 2 mai car par défaut PHP pense que la date est au format américain qui place le mois avant le jour
$timestamp_datecreatefromformat = date_create_from_format('d/m/Y', $date_originale);
echo date_format($timestamp_datecreatefromformat, "d M Y");
// Va renvoyer le 5 février
##edit : j'ai mis à jour la FAQ avec cet exemple

Une solution élégante est d'utiliser la fonction [url=http://php.net/manual/fr/datetime.createfromformat.php]date_create_from_format()[/url] qui permet de préciser justement le format dans lequel est ta date en entrée pour éviter les confusions entre format anglo-saxon et format français.
[php]<?php
$date_originale="05/02/2015";
$timestamp_strtotime=strtotime($date_originale);
echo date("d M Y", $timestamp_strtotime);
// Va renvoyer le 2 mai car par défaut PHP pense que la date est au format américain qui place le mois avant le jour
$timestamp_datecreatefromformat = date_create_from_format('d/m/Y', $date_originale);
echo date_format($timestamp_datecreatefromformat, "d M Y");
// Va renvoyer le 5 février
[/php]
##edit : j'ai mis à jour la FAQ avec cet exemple ;)