如何使用PHP计算两个字符串日期的差异?

Abh*_*har 5 php string datediff date

我有两个日期变量:

$dnow = "2016-12-1";
$dafter = "2016-12-11";
Run Code Online (Sandbox Code Playgroud)

我想计算这两个日期的差异,这两个日期是字符串格式,所以我该如何计算?我用了

date_diff($object, $object2)
Run Code Online (Sandbox Code Playgroud)

但它期待两个日期对象,我有String格式的日期,使用后date_diff我得到以下错误

消息:类DateInterval的对象无法转换为字符串.

Jer*_*dev 6

您可以使用该strtotime函数创建两个日期的时间戳并比较这些值。

<?php

$start = strtotime('2016-12-1');
$end = strtotime('2016-12-11');
$diffInSeconds = $end - $start;
$diffInDays = $diffInSeconds / 86400;
Run Code Online (Sandbox Code Playgroud)


小智 5

试试这个,使用date_create

$dnow = "2016-12-1";
$dafter = "2016-12-11";
$date1=date_create($dnow);
$date2=date_create($dafter);
$diff=date_diff($date1,$date2);
print_r($diff);
Run Code Online (Sandbox Code Playgroud)

DEMO