是否有任何PHP函数来格式化时间(不是日期)?

时间:2010-03-18 11:12:05

标签: php time

我将mysql表字段设置为时间类型,以HH:mm:ss格式存储数据。因此,当我列出数据时,它会打印为例如16:30:00。但我想只显示hh:mm部分(不是秒)。

如果是日期时间类型,我可以约会('H:i','2010-03-16 16:30:00')。我的意思是我可以找回任何部分。我想知道是否有类似的方式只适用于时间场?

请注意,我可以使用str_replace,explode等操作时间字符串以消除时间部分,我只是想知道是否有任何我不知道的标准函数。

3 个答案:

答案 0 :(得分:9)

如果您想使用PHP执行此操作,则必须先从时间开始获取时间戳,例如

echo date('H:i', strtotime('16:30:00'));

将输出16:30Strtotime将假定时间是当前日期。

答案 1 :(得分:3)

您可以让MySQL使用Date_Format()

以您希望的格式返回数据

编辑:正如fireeyedboy所指出的,还有一个TIME_FORMAT()函数。

答案 2 :(得分:1)

另一种方法是:

SELECT UNIX_TIMESTAMP(time_field) AS tstamp FROM table;

然后你可以使用PHP的date()函数来格式化它。

$time = date('H:i', $tstamp);