格式日期字段类型

时间:2010-12-03 07:34:42

标签: php mysql

我有一个我感兴趣的csv文件,日期格式是2010年11月20日如何格式化以插入mysql接受的格式为Date类型的字段?

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

Andreas的答案有点简洁 - 在PHP中,这将返回一个你可以拼接的字符串 进入你的查询:

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

但如果省略标点符号,则可以在没有引号的情况下对其进行广告宣传:

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

这种方法的一个缺点是strtotime()往往总是返回某种日期值 - 有时候不是你期望的。

但是你可以在MySQL中进行解析,这是非常严格的:

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

但是当mysql尝试解析日期时,请记住check for errors