2010-12-03 18 views
0

Ich habe eine CSV-Datei, die ich interessiere und das Datumsformat ist 20-Nov-2010 Wie formatiere ich es für die Einfügung in mysql akzeptiert Format für ein Feld mit Datum als Typ?Format Datum Feldtyp

Antwort

0
date("Y-m-d", strtotime("20-Nov-2010")); 
0

Andreas' Antwort ist ein wenig kurz und bündig - in PHP diese eine Zeichenfolge zurück, die Sie in Ihre Abfrage splice kann:

$d=date("Y-m-d", strtotime("20-Nov-2010")); 
$qry="INSERT INTO sometable (adate) VALUES('$d')"; 

Aber wenn Sie die Zeichensetzung weglassen, können Sie es ad ohne die Zitate:

$d=date("Ymd", strtotime("20-Nov-2010")); 
$qry="INSERT INTO sometable (adate) VALUES($d)"; 

Ein Nachteil dieses Ansatzes ist, dass strtotime() dazu, eine Art von Datumswert immer wieder zurückkehren - und manchmal nicht, was Sie erwarten.

auch immer Sie das Parsen in MySQL tun könnte, die viel strenger ist:

$d='20-Nov-2010'; 
$qry="INSERT INTO sometable (adate) VALUES(STR_TO_DATE($d, '%d-%b-%Y'))"; 

Aber denken Sie daran, wenn check for errors mysql das Datum zu analysieren versucht.