在PHP中将24小时格式小时转换为12小时格式时间

时间:2017-09-09 06:01:20

标签: php datetime

如何将24小时格式小时转换为12小时格式时间,如1630应该是下午4:30。

有文章将24小时格式时间转换为12小时格式时间,如16:30到04:30 PM,但我需要将小时转换为时间。

我这样做是将它除以1200并将余数作为分钟,但我希望还有另一种方法可以使用日期或时间函数。

2 个答案:

答案 0 :(得分:4)

你可以这样做

<?php
 $date  =  date("Y-m-d 16:30:00");
 echo date("h:i a",strtotime($date));
?>

现场演示:https://eval.in/858486

或者如果您的时间是1630

$time = 1630;
$time = (int)(1630/100).":".(1630%100);
$date  =  date("Y-m-d $time:00");
echo date("h:i a",strtotime($date));

现场演示:https://eval.in/858559

更新3位数字,例如920815

$time = "0920"; // here $time should be string `0` is for other base of number
$last2 = substr($time, -2);
$time = str_replace($last2,":".$last2,$time);
$date  =  date("Y-m-d $time");
echo date("h:i a",strtotime($date));

现场演示:https://eval.in/858555

答案 1 :(得分:4)

我认为这对你有用。

date("h:i a",strtotime("1630"));