我正在尝试返回两个日期之间的差额,我正在根据stackoverflow上的示例工作
我的问题?我完全返回了错误的结果,下面的代码返回30年0个月9天,显然它应该只有7天或1周。
代码如下:
date_default_timezone_set('America/Los_Angeles');
$pickupDate = '2016-10-13';
$returnDate = 2016-10-20;
$diff = abs(strtotime($pickupDate) - strtotime($returnDate));
$years = floor($diff / (365*60*60*24));
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));
printf("%d years, %d months, %d days\n", $years, $months, $days);
任何输入表示赞赏
只需将单引号放在返回日期之内$returnDate = '2016-10-20';
,就可以使用date_diff()
php之类的功能,
$daysdiffernce = date_diff(date_create('2016-10-13'),date_create('2016-10-20'));
echo $daysdiffernce->format("%R%a days");
这将准确地提供+7天的答案
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句