将CURRENT_TIMESTAMP格式化为AM&下午

时间:2011-09-30 03:34:31

标签: php mysql timestamp

今天我正在使用PHP和MySQL,我将Dates在时间戳字段中存储到MySQL中,但默认情况下是24 / h格式,如果有人知道我怎么能确定这个小时到上午或下午示例:

14:05 -> 2:05PM
02:05 -> 2:05AM
很多,谢谢你的时间。

3 个答案:

答案 0 :(得分:6)

您可以使用DATE_FORMAT()

SELECT DATE_FORMAT(hour_column, '%r');

答案 1 :(得分:1)

不,不,不。 “时间戳”值可能意味着“上午11:00”(如果您在纽约),但相同的值也意味着“下午4:00”(如果您在英国格林威治)。

时间戳VALUE与您所在的时区无关。

话虽如此,您想将日期时间STRING(24 / h格式)转换为不同的日期时间字符串(转换为12 /子午线格式)。

从MySQL或PHP轻松完成:无论你喜欢什么。

以下是PHP日期/时间格式函数和相应的格式字符串:

http://php.net/manual/en/function.strtotime.php

http://www.php.net/manual/en/datetime.formats.time.php

以下是MySQL参考页面:

http://dev.mysql.com/doc/refman/5.5/en/datetime.html

http://www.w3schools.com/sql/func_date_format.asp

答案 2 :(得分:1)

DateTime将是你的朋友。

首先,如果您的php配置尚未为您设置,请将您的默认时区设置为:

date_default_timezone_set('XXXX');

XXXX代表List of supported timezones

之外的值

通过以下方式初始化您的日期:

$date = new DateTime();

要获取时间戳,您现在可以使用:

$timestamp = $date->getTimestamp();

如前所述,输出(格式)取决于您的时区。您可以提前设置默认时区,但可以根据需要随时更改。

要格式化日期,您可以使用它:

$12h = $date->format( 'h:i:s a' );
$24h = $date->format( 'H:i:s a' );

要了解有关DateTime的更多信息,请查看DateTime class manual