php - 如何使用 PHP 计算两个日期之间的差异?

我有两个日期的表格:

Start Date: 2007-03-24 
End Date: 2009-06-26

现在我需要用下面的形式找出这两者的区别:

2 years, 3 months and 2 days

我如何在 PHP 中做到这一点?

最佳答案

我建议使用 DateTime 和 DateInterval 对象。

$date1 = new DateTime("2007-03-24");
$date2 = new DateTime("2009-06-26");
$interval = $date1->diff($date2);
echo "difference " . $interval->y . " years, " . $interval->m." months, ".$interval->d." days "; 

// shows the total amount of days (not divided into years, months and days like above)
echo "difference " . $interval->days . " days ";

阅读更多 php DateTime::diff manual

来自手册:

As of PHP 5.2.2, DateTime objects can be compared using comparison operators.

$date1 = new DateTime("now");
$date2 = new DateTime("tomorrow");

var_dump($date1 == $date2); // bool(false)
var_dump($date1 < $date2);  // bool(true)
var_dump($date1 > $date2);  // bool(false)

https://stackoverflow.com/questions/676824/

相关文章:

php - 查找两个日期之间的天数

php - 如何在 PHP 中获取文件的扩展名?

php - 如何使用 PHP 发送 POST 请求?

php - 如果文件夹不存在,则创建一个文件夹

php - PHP中的die()和exit()有什么区别?

php - fatal error : Allowed Memory Size of 1342177

php - 将 PHP 对象转换为关联数组

php - 从分隔字符串中删除尾随分隔字符

php - 如何在 PHP 中去除字符串中的所有空格?

php - 绕过 mysql_real_escape_string() 的 SQL 注入(injec