我在MySQL中有一个日期时间列。

如何将其转换为显示为mm/dd/yy H:M (AM/PM)使用PHP?


当前回答

$valid_date = date( 'm/d/y g:i A', strtotime($date));

参考:http://php.net/manual/en/function.date.php

其他回答

如果您正在寻找一种将日期规范化为MySQL格式的方法,请使用以下方法

$phpdate = strtotime( $mysqldate );
$mysqldate = date( 'Y-m-d H:i:s', $phpdate );

$phpdate = strtotime($mysqldate)行接受一个字符串,并执行一系列启发式操作将该字符串转换为unix时间戳。

$mysqldate = date('Y-m-d H:i:s', $phpdate)使用该时间戳和PHP的日期函数将该时间戳转换回MySQL的标准日期格式。

(编者注:这个答案在这里是因为一个原始的问题,措辞令人困惑,这个答案提供了一般谷歌有用性,即使它没有直接回答现在存在的问题)

SELECT 
 DATE_FORMAT(demo.dateFrom, '%e.%M.%Y') as dateFrom,
 DATE_FORMAT(demo.dateUntil, '%e.%M.%Y') as dateUntil
FROM demo

如果您不想更改PHP代码中的每个函数,以显示预期的日期格式,请在源代码—您的数据库中更改它。

重要的是要像上面的例子一样,用as操作符来命名行(如dateFrom, dateUntil)。你在这里写的名字,这些行会在结果中被调用。

此示例的输出将是

[每月的第一天,数字(0..31)]。[月份名称(一月至十二月)]。[年份,数字,四位数]

例如:5. august.2015

使用分隔符更改圆点,并检查DATE_FORMAT(date,format)函数以获得更多的日期格式。

$valid_date = date( 'm/d/y g:i A', strtotime($date));

参考:http://php.net/manual/en/function.date.php

直接输出,如德文格式:

  echo(date('d.m.Y H:i:s', strtotime($row["date_added"])));

忘记所有。只使用:

$date = date("Y-m-d H:i:s",strtotime(str_replace('/','-',$date)))