我在db
中有这种日期格式19th April 2013
我想将其转换为
2013-04-19
我使用过if,else条件,BUt它变得太长而复杂。是否有任何内置函数?
答案 0 :(得分:8)
使用PHP's
date
功能
date("Y-m-d",strtotime("19th April 2013"));
答案 1 :(得分:2)
是以下代码更改日期格式
date("Y-m-d",strtotime("19th April 2013")); to get as 2013-04-19
和第二个
date("Y/m/d",strtotime("17th April 2013")); to get as 2013-04-17
答案 2 :(得分:1)
您仍然可以通过查询进行操作,因此您不会在PHP
方面进行任何转换。由于列的数据类型是字符串,因此您需要使用STR_TO_DATE
将其转换为有效日期。
SELECT DATE_FORMAT(STR_TO_DATE(columnname, '%D %M %Y'), '%Y-%m-%d') new_format
FROM TableName
答案 3 :(得分:1)
以下PHP代码将日期转换为所需的格式
$date = '19th April 2013'
echo date('Y-m-d', strtotime($date));
和其他格式如下
April 22, 2013 date("F d, Y",strtotime($myrow['date']));
Monday, April 22, 2013 date("l, F d, Y",strtotime($myrow['date']));
Apr 22, 2013 date("M d, Y",strtotime($myrow['date']));
22 April 2013 date("d F Y",strtotime($myrow['date']));
22 Apr 2013 date("d M Y",strtotime($myrow['date']));
Mon, 22 Apr 2013 date("D, d M Y",strtotime($myrow['date']));
Monday, the 22nd of April, 2013 date("l",strtotime($myrow['date'])) . ", the " . date("jS",strtotime($myrow['date'])) . " of " . date("F, Y",strtotime($myrow['date']));