如果我有两个从 SQL 查询返回的日期,我如何计算它们涵盖的天数?
IE:
$date1 = '2013-08-08';
$date2 = '2013-08-12';
$days = ???;
作为一个选项,您可以使用 sql 查询以及其他数据直接返回日期差异DATEDIFF()
SELECT date1,
date2,
DATEDIFF(date2, date1) date_diff
FROM ...
样本输出:
+------------+------------+------------+ | 日期1 | 日期2 | 日期差异 | +------------+------------+------------+ | 2013-08-08 | 2013-08-12 | 4 | +------------+------------+------------+
这是SQLFiddle演示
一个纯粹的 php 解决方案:
$date1= new DateTime("2013-08-08");
$date2 = new DateTime("2013-08-12");
$diff = $date1->diff($date2);
echo $diff->format("%a days ago");