我想计算两个日期之间的总天数。
注:我不是在谈论两个日期之间的区别
我在google和Stack Overflow上找到了很多答案。我在这里分享
$now = time(); // or your date as well
$your_date = strtotime("2018-06-01");
$datediff = $now - $your_date;
echo round($datediff / (60 * 60 * 24));
输出为9
$now = strtotime("2018-06-09");
$your_date = strtotime("2018-06-01");
$datediff = $now - $your_date;
echo $numberDays= round($datediff / (60 * 60 * 24));
输出为8
$dStart = new DateTime('2018-06-01');
$dEnd = new DateTime('2018-06-09');
$dDiff = $dStart->diff($dEnd);
echo $dDiff->days;
输出为8
$date1=date_create("2018-06-01");
$date2=date_create("2018-06-09");
$diff=date_diff($date1,$date2);
echo $diff->format("%a");
输出为8
$startTimeStamp = strtotime("2018-06-01");
$endTimeStamp = strtotime("2018-06-09");
$timeDiff = abs($endTimeStamp - $startTimeStamp);
$numberDays = $timeDiff/86400; // 86400 seconds in one day
// and you might want to convert to integer
echo $numberDays = intval($numberDays);
输出为8
对我来说,正确的答案是第一个9,因为它显示了从1到9的总天数,而不是差异。
我只想知道如何获取计数,因为我不想使用time(),因为它接受当前日期。
例如:如果我选择第一个日期2018-05-01,第二个日期在2018-05-31。所以总共是31天,而不是30天。
例如:我正在做一个与工作天数和工资有关的项目。因此,employee将选择日期。例如。我是员工,在上个月的5月,我选择了日期2018-05-01和2018-05-31,所以我必须根据我工作31天的日期显示总的工作days.So,并在问题中使用上面的代码我得到30天。
希望你能理解我的问题。你能帮我解决这个问题吗?
https://stackoverflow.com/questions/50777194
复制相似问题