365 votes

Format de date() PHP lors de l’insertion en datetime dans MySQL

Quel est le format correct en utilisant la fonction date() de PHP à insérer dans une colonne de type datetime MySQL ?

J’ai essayé cette date ("Y-M-D G:i:s") ; mais qui insère juste « 0000-00-00 00:00:00 » à chaque fois.

763voto

Mark Elliot Points 31871

Le problème est que vous êtes en utilisant et , qui sont des représentations textuelles, MySQL s’attend à une représentation numérique du format``

Essayez : `` qui utilise les équivalents numériques.

Edit : mis à , si elle n’a pas d’impact, vous voulez probablement utiliser format de 24 heures avec les principaux 0 s.

119voto

Tim Lytle Points 10699

D’après les commentaires de php `` page de manuel:

Vous avez eu le « Y » correct - c’est une année complète, mais suis ' est un trois mois de caractère, tout en me ' y a un mois à deux chiffres. Même question avec. par « au lieu de « d ». « G » est un 1 ou heure à 2 chiffres, où les « H » a toujours un 0 quand nécessaire.

44voto

JAL Points 11164

Voici une solution alternative : Si vous avez la date en PHP comme un timestamp, contourner la manipulation avec PHP et laisser la DB à s’occuper de la transformer en utilisant le `` fonction.

31voto

J’utilise le code PHP suivant pour créer une variable que j’ai insérer dans une colonne DATETIME MySQL.

Cela va tenir la Date et l’heure actuelles du serveur.

10voto

Pekka 웃 Points 249607

Essayez

Voir toutes les options pour la fonction date() dans le Manuel.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X