php获取差几天的方法:1、把日期转成时间戳,然后把时间戳运算成天数;2、利用日期时间对象中的方法求两个日期之间相差天数,代码如“$datetime_start->diff($datetime_end)->days;”。
PHP之两个日期之间相差天数
求两个日期之间相差天数
方案一:把日期转成时间戳,然后把时间戳运算成天数。(不推荐,知道有这回事就行)
$start_date = "2018-05-25";
$end_date = "2017-05-23";
$start_time = strtotime($start_date);
$end_time = strtotime($end_date);
$days = abs(($start_time - $end_time) / 86400);
echo "时间差是:$days";
缺点:这种方法不保险,①把日期转成时间戳默认是 int 类型,int 空间可能不够 ②时间戳数值太大,用于运算不太科学
方案二:利用日期时间对象中的方法(推荐)
$start_date = "2018-05-25";
$end_date = "2017-05-23";
$datetime_start = new DateTime($start_date);
$datetime_end = new DateTime($end_date);
$days = $datetime_start->diff($datetime_end)->days;
echo "时间差是:$days";