Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算两个日期之间的天数,如果超过1小时,则再加上1天_Php_Datetime_Time_Count_Difference - Fatal编程技术网

Php 计算两个日期之间的天数,如果超过1小时,则再加上1天

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

我在计算确切的天数时遇到了问题。鉴于我有时间/时间考虑小时数计数天以下代码给我零天< /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-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吗