如何计算两个日期时间之间的小时,分钟? [复制]
Posted
技术标签:
【中文标题】如何计算两个日期时间之间的小时,分钟? [复制]【英文标题】:How to calculate the hour,min between two date time? [duplicate] 【发布时间】:2014-03-08 17:04:14 【问题描述】:我有两个约会
$date1 = "2014-02-11 04:04:26 AM"
$date2 = "2014-02-11 05:36:56 AM"
我要计算差值并显示如下
1 hour 32 minutes
【问题讨论】:
【参考方案1】:利用DateTime
类的DateTime::diff
<?php
$datetime1 = new DateTime('2014-02-11 04:04:26 AM');
$datetime2 = new DateTime('2014-02-11 05:36:56 AM');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%h')." Hours ".$interval->format('%i')." Minutes";
OUTPUT :
1 Hours 32 Minutes
【讨论】:
一个简单的问题,我怎样才能将 1 小时 32 分钟转换为小时。我的意思是我想要以小时为单位的结果。有什么想法吗? 我不明白你的问题。您想要什么作为预期输出? 您的意思是 1 小时 30 分钟 -> 1.5 小时?只需将分钟除以 60。 我认为如果 $datetime2 = new DateTime('2014-03-11 05:36:56 AM');答案是一样的…… 如果日期相差超过 24 小时,则结果错误。这个答案只会给出 0 到 23 之间的小时数。【参考方案2】:如果不想以复杂的方式进行,只需将两个日期都转换为时间戳... 像这样的
$dateDiff = intval((strtotime($date1)-strtotime($date2))/60);
$hours = intval($dateDiff/60);
$minutes = $dateDiff%60;
你去...
谢谢...
【讨论】:
你的答案是正确的,但你必须从 date1 中减去 date1。 如何找到 $seconds 呢? 要获得天数,您必须这样做 '$days = intval($duree/(60*24)); $hours = intval($duree/60)%24; $分钟 = $duree%60; return "$days J $hours H $minutes m";'以上是关于如何计算两个日期时间之间的小时,分钟? [复制]的主要内容,如果未能解决你的问题,请参考以下文章