我试图在今天午夜和#34; 00:00"之间返回小时和分钟的差异。现在时间。
这是我到目前为止所做的:
$now = date('H:i:s', time());
$time1 = strtotime('00:00:00');
$time2 = strtotime($now);
$difference = round(abs($time2 - $time1) / 3600,2);
echo $difference;
返回的值看起来不正确,现在时间是10:37,返回的差异显示为10:63。现在这不正确。任何人都可以看到我出错的地方。
非常感谢你的时间。
干杯。
答案 0 :(得分:0)
试试这个并设计你的输出时间。
$start_time = "00:00:00";
$end_time = date("H:i:s", time());
$time1 = new DateTime($start_time);
$time2 = new DateTime($end_time);
$interval = $time1->diff($time2);
var_dump($interval); //for details about the interval times
echo $hour = $interval->format('%h hour'); // hour
echo $min = $interval->format('%i min'); // min
echo $sec = $interval->format('%s second');// sec
答案 1 :(得分:0)
这可能是你的答案
$start_time = "00:00";
$end_time = date("H:i");
$time1 = new DateTime($start_time);
$time2 = new DateTime($end_time);
$interval = $time1->diff($time2);
echo $hour = $interval->format('%h hour');
echo '<br/>';
echo $min = $interval->format('%i min');
输出
15小时
24分钟
运行此代码时输出会有所不同。我只是从我的机器上粘贴它。
答案 2 :(得分:0)
您也可以使用此简短代码段
$now = new DateTime(date('H:i:s'));
$midnight = new DateTime(date('00:00:00'));
$interval = $now->diff($midnight);
$result = $interval->format("%H hour(s) and %i minute(s)");