我使用的是PHP和MySQL。如何将时间格式为HH:MM AM / PM转换为HH:MM:SS以节省MySQL时间?
答案 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
。