J'essaie de convertir une heureTetime MySQL en ce format M / D / Y, mais le code ci-dessous ne fonctionne pas, renvoie le 12/11/1969 que quelqu'un peut-il me montrer comment faire cela?
6 Réponses :
Deux numéros:
1) Vous avez besoin d'une capitale Y p>
2) Vous avez besoin d'un type de date correct. P>
Essayez p>
$fromMYSQL = date_create ('2007-10-17 21:46:59');
echo date("m/d/Y", $fromMYSQL);
Vous avez besoin d'un Capital page manuelle PHP pour la date a> peut être d'une assistance. p> p> Y code> int La chaîne de format de date. Le minuscule y code> donne une année à deux chiffres et la majuscule "y" donne une année à quatre chiffres.
Vous êtes correct pour obtenir une année à 4 chiffres, mais cela n'aide pas à ce problème de ne pas montrer la date correcte, indique le 12/31/1969
Réponse mise à jour. strtotime code> devrait analyser l'heure de MySQL.
Je pense que ce que vous voulez vraiment, c'est ceci:
$fromMYSQL = '2007-10-17 21:46:59';
echo date("m/d/Y", strtotime($fromMYSQL));
Modifiez la chaîne de format en "M / D / Y" et je vais uppoter. Il veut une année à 4 chiffres.
Génial. Travaux. Facile à mettre en œuvre.
SQL:
date('m/d/Y', $result['date']);
J'ai couvert cela dans ma réponse à H TTP: //stackoverflow.com/questions/499014/i-need-a-changer-the-date-format-utilisateur-php/499021#499021 - Fondamentalement, J'explique quelques approches pour traiter les colonnes de date de ma réponse. P> date () code > s'attend à un horodatage UNIX à partir duquel il calcule la date / l'heure et les formats qui. Vous passez dans une chaîne qui provient du résultat de la requête MySQL, qui est probablement muquée par le canard de PHP en tapant quelque chose qui ressemble à un horodatage unix, mais n'a aucun sens. P>
Le meilleur moyen est de convertir le format de date directement dans votre chaîne de requête:
function format_date($original, $format) {
if (empty($original)) {
$original = date("Y-m-d H:i:s");
}
$original = ereg_replace("30 Dez 1899", "30-01-1973", $original);
$format = ($format=='date' ? "%m-%d-%Y" : $format);
$format = ($format=='germandate' ? "%d.%m.%y" : $format);
$format = ($format=='germandaydate' ? "%A, %d.%m.%Y" : $format);
$format = ($format=='germantime' ? "%H:%M" : $format);
$format = ($format=='germandatetime' ? "%d.%m.%y %H:%M:%S" : $format);
$format = ($format=='datetime' ? "%m-%d-%Y %H:%M:%S" : $format);
$format = ($format=='mysql-date' ? "%Y-%m-%d" : $format);
$format = ($format=='mysql-datetime' ? "%Y-%m-%d %H:%M:%S" : $format);
$format = ($format=='mssql-date' ? "%Y%m%d" : $format);
$format = ($format=='mssql-datetime' ? "%Y%m%d %H:%M:%S" : $format);
$format = ($format=='Ymd' ? "%Y-%m-%d" : $format);
return !empty($original) ? strftime($format, strtotime($original)) : "";
}