Mysql
 sql >> Base de données >  >> RDS >> Mysql

La date est insérée sous la forme 0000-00-00 00:00:00 dans mysql

Vous êtes sur la bonne voie avec votre date('Y-m-d H:i:s',$date); solution, mais la fonction date() prend un horodatage comme deuxième argument, pas une date.

Je suppose que vos exemples sont au format de date américain, car ils ressemblent à cela. Vous pouvez le faire, et cela devrait vous donner les valeurs que vous recherchez :

date('Y-m-d H:i:s', strtotime($date));

La raison pour laquelle cela ne fonctionne pas est qu'il attend la date au format AAAA-MM-JJ et essaie d'évaluer vos données en tant que telles. Mais vous avez MM/JJ/AA, ce qui le confond. L'exemple 06/11/10 est le seul qui puisse être interprété comme une date AAAA-MM-JJ valide parmi vos exemples, mais PHP pense que vous voulez dire 06 comme année, 11 comme mois et 10 comme jour.