Php 计算两个日期之间的天数,如果超过1小时,则再加上1天
我在计算确切的天数时遇到了问题。鉴于我有时间/时间考虑小时数计数天以下代码给我零天< /P>Php 计算两个日期之间的天数,如果超过1小时,则再加上1天,php,datetime,time,count,difference,Php,Datetime,Time,Count,Difference,我在计算确切的天数时遇到了问题。鉴于我有时间/时间考虑小时数计数天以下代码给我零天< /P> $fisrstDate = new DateTime("2018-03-07 04:46:00"); $secondDate = new DateTime("2018-03-07 11:10:00"); $days=$fisrstDate->diff($secondDate)->days; 另一个例子是,它应该给我2天,但显示只有1天我的想法是,当24小时超过我想再加上1天,这样它会给我2
$fisrstDate = new DateTime("2018-03-07 04:46:00");
$secondDate = new DateTime("2018-03-07 11:10:00");
$days=$fisrstDate->diff($secondDate)->days;
另一个例子是,它应该给我2天,但显示只有1天我的想法是,当24小时超过我想再加上1天,这样它会给我2天的输出
$fisrstDate = new DateTime("2018-03-07 04:46:00");
$secondDate = new DateTime("2018-03-08 05:00:00");
$days=$fisrstDate->diff($secondDate)->days;
您可以使用
strotime
获取两个时间戳之间的精确秒数,然后将其转换为天,后跟ceil
,以使其正常工作。例如:
$fisrstDate = strtotime("2018-03-07 04:46:00");
$secondDate = strtotime("2018-03-07 11:10:00");
$days = abs(ceil((abs($fisrstDate - $secondDate)/ (60 * 60 * 24)) - (1 / 24)));
echo $days;
这不就是date2-date1+1吗