计算两个日期相差多少天

谭佳成
2018-09-24
(87)

今天(2018-09-24)中秋,看到支付宝公众号说2005-02-02提出“天下无贼”,距离现在多少天,评论有Python写的程序算出,现在用php来计算下

方法一:

function count_days($a, $b){
    $a_dt = getdate($a);
    $b_dt = getdate($b);
    $a_new = mktime(12,0,0,$a_dt['mon'],$a_dt['mday'],$a_dt['year']);
    $b_new = mktime(12,0,0,$b_dt['mon'],$b_dt['mday'],$b_dt['year']);
    return round(abs($a_new-$b_new)/(60*60*24));
}
$date1 = strtotime('09/24/2018');
$date2 = strtotime('02/02/2005');
$res = count_days($date1,$date2);
echo $res;exit;//4982


方法二:

$d1 = strtotime('2005-02-021);
$d2 = strtotime('2018-09-24');
$days = abs(round(($d2-$d1)/3600/24));
echo '2018-09-24与2005-02-02相差'.$days.'天';//4982
exit;


方法三:

$datetime_start = new DateTime("2005-02-02");
$datetime_end = new DateTime("2018-09-24");
echo $datetime_start->diff($datetime_end)->days;//4982
exit;


方法四:

$datetime_start = date_create("2005-02-02");
$datetime_end = date_create("2018-09-24");
echo date_diff($datetime_start, $datetime_end)->days;//4982
exit;


如无说明,本站文章均为原创,转载或引用注明来源:https://93jc.cn/article/172.html