如何为mysql DATE字段格式化此日期01 August, 15
。所以我在PHP中需要2015-08-01
这种格式的01 August, 15
格式。试过以下但没有工作
echo date('Y-m-d',strtotime('01 August, 15'));
答案 0 :(得分:2)
这是因为strtotime()
无法理解01 August, 15
的含义。试试吧:
var_dump(strtotime('01 August, 15')); // false
最后15
太模糊了;它可能是一个月中的一天或短暂的一年。
最简单的方法是使用DateTime::createFromFormat
,如下所示:
$date = '01 August, 15';
$parsed = DateTime::createFromFormat('d F, y', $date);
echo $parsed->format('Y-m-d');
如果您控制日期的格式,那么您也可以更容易解析。例如,将01 August 2015
格式化为可行。
答案 1 :(得分:1)
首先删除日期,然后使用strtotime函数。 所以:
$date = "01 August, 15";
$date = str_replace(",", "", $date);
echo date("Y-m-d",strtotime($date));