【问题标题】:PHP adding multiple datetime to get a totalPHP添加多个日期时间以获得总数
【发布时间】:2017-01-30 17:50:52
【问题描述】:

我正在使用 php 和 mysql,我有一个包含两个启动/停止列的数据库。我想先搞清楚它们之间的区别。

  1. 开始+停止,我有

    $start = new DateTime($start_time);
    $stop = new DateTime($stop_time);
    $difference = $start->diff($stop);
    
  2. 得到所有行加起来为(H:i:s)格式后的总数

E.G

  1. 4 分钟
  2. 15 分钟
  3. 1 小时

========
总计 1:19:00

【问题讨论】:

标签: php mysql datetime


【解决方案1】:

首先声明一些合计变量,

$total_hours = 0;
$total_minutes = 0;
$total_seconds = 0;

然后循环遍历数据库中的每一行

$start = new DateTime($start_time);
$stop = new DateTime($stop_time);
$difference = $start->diff($stop);
echo $difference->h.":".$difference->i.":".$difference->s;
$total_hours += $difference->h;
$total_minutes += $difference->i;
$total_seconds += $difference->s;

最后在循环后打印总数

echo "========";
echo "Total ".$total_hours.":".$total_minutes.":".$total_seconds;

【讨论】:

  • 是的,谢谢,效果很好...我以前尝试过类似的方法,但缺少一些东西..
  • 很高兴能帮上忙!
  • @FabianGlace 不要忘记接受答案并点赞,这样其他人就会知道它解决了您的问题。
  • 是的,我投了赞成票。我一开始想到但现在已经确认的一个问题是格式。在我会得到的情况下,例如 6 分 141 秒过去 60 应该添加到最小值,但如何自动完成..我必须手动完成..
猜你喜欢
  • 2016-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-21
  • 1970-01-01
  • 1970-01-01
  • 2018-09-13
  • 2017-01-08
相关资源
最近更新 更多