php - 如何在PHP中以分钟为单位获取时差

标签 php date time minute

如何在 PHP 中计算两个日期时间之间的分钟差?

最佳答案

以上答案适用于旧版本的 PHP。由于 PHP 5.3 已成为标准,请使用 DateTime 类进行任何日期计算。 例如。

$start_date = new DateTime('2007-09-01 04:10:58');
$since_start = $start_date->diff(new DateTime('2012-09-11 10:25:00'));
echo $since_start->days.' days total<br>';
echo $since_start->y.' years<br>';
echo $since_start->m.' months<br>';
echo $since_start->d.' days<br>';
echo $since_start->h.' hours<br>';
echo $since_start->i.' minutes<br>';
echo $since_start->s.' seconds<br>';

$since_start 是一个 DateInterval 对象。请注意,days 属性是可用的(因为我们使用了 DateTime 类的 diff 方法来生成 DateInterval 对象)。

上面的代码会输出:

总共1837天
5年
0个月
10天
6小时
14分钟
2秒

获取总分钟数:

$minutes = $since_start->days * 24 * 60;
$minutes += $since_start->h * 60;
$minutes += $since_start->i;
echo $minutes.' minutes';

这将输出:

2645654 分钟

这两个日期之间的实际分钟数。 DateTime 类将考虑夏令时(取决于时区),而“旧方式”则不会。阅读有关日期和时间 http://www.php.net/manual/en/book.datetime.php 的手册

关于php - 如何在PHP中以分钟为单位获取时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/365191/

相关文章:

php - fatal error : Call to undefined function mysqli_connect()

php - MySQL检查表的行数是否小于(N + 8)

php - 当日期刚刚保存为 UNIX 时间戳时,针对特定日期的 MySQL 过滤器

java - Spring如何管理Date参数?

android - 安卓错误 "week of year"

Python 循环延迟

php - SQL插入无法在PHP中工作

javascript - 如何像 html textarea 换行符一样初始化 CKEditor textarea 换行符

c++ - 如何获得非常精确的耗时 C++

PHP:使用 DateTime 类转换日期