将时间格式为HH:MM AM / PM转换为HH:MM:SS

时间:2014-11-02 15:57:33

标签: php mysql sql

我使用的是PHP和MySQL。如何将时间格式为HH:MM AM / PM转换为HH:MM:SS以节省MySQL时间?

4 个答案:

答案 0 :(得分:2)

使用strtotime将其转换为时间戳,然后使用date函数对其进行格式化。

以下示例假定$time已设置为您需要格式化的时间。

$time = date( "H:i:s", strtotime( $time ) );

答案 1 :(得分:1)

我这样做的方式是:

<?php
    $date = "6:23 AM";
    $timeType = explode(" ", $date);
    $timeItems = explode(":", $timeType[0]);
    if($timeType[1] == "PM"){
        $timeItems[0] += 12;
    }
    $time = implode(":", $timeItems);
    $time .= ":00";
    var_dump($time);
?>

答案 2 :(得分:0)

使用date_format()解决您的问题:

DATE_FORMAT(date,'%H:%i:%s')

答案 3 :(得分:0)

易。在MySQL中使用DATE_FORMAT,如下所示:

SELECT DATE_FORMAT(NOW(), '%H:%i:%s');

使用您的示例,您可以将此与STR_TO_DATE结合使用,如下所示:

SELECT DATE_FORMAT(STR_TO_DATE('09:41 AM', '%h:%i %p'), '%H:%i:%s');

然后在您的MySQL查询中,您可以使用基于MySQL表的变量替换09:41 AM