【问题标题】:How to find time different with php如何用php找到不同的时间
【发布时间】:2014-03-07 18:38:34
【问题描述】:

我试图找出两次之间的时间差。这是我的代码:

$ddtcounter1="2014-03-06 20:20:30";

$ddtcounter2="2014-03-07 21:20:30";

$today = new DateTime($ddtcounter2);
$pastDate = $today->diff(new DateTime($ddtcounter1));

$total= $pastDate->h . ".";
$total2=$total.$pastDate->i;

echo $total2; //echo the time difference in hour.minutes form (Exmple:2.1)

如何找到时差?我已经阅读了一些指南和教程,但它们没有帮助。我阅读了很多答案,但它们对我不起作用...

编辑: 示例(对于谁不明白的问题):

第一次:2014-03-06 20:30:30

第二个是:2014-03-07 19:30:30

时差将是23.0(23 小时),因为它发生在 1 天前!

【问题讨论】:

  • 你之前问过同样的问题吗?
  • 我确定他/她做到了。我也清楚地记得它。 @user1844933 --- 必须删除它。这几行代码我记得$total= $pastDate->h . "."; $total2=$total.$pastDate->i;
  • 是的,因为我第一次没有正确解释问题...

标签: php time datediff


【解决方案1】:

这应该可行:

$ddtcounter1="2014-03-06 20:15:30";
$ddtcounter2="2014-03-07 21:20:30";

$date1 = new DateTime($ddtcounter1);
$date2 = new DateTime($ddtcounter2);
$diff = $date1->diff($date2);

$hours = $diff->d * 24;
$hours += $diff->h;
echo $hours;
echo $diff->i; // Minutes
echo sprintf('%s.%s', $hours, $diff->i); // Hours.Minutes

【讨论】:

  • 这不是问题...问题是它只显示了时代之间的差异。在这个例子中,它说 1 小时不同,它不检查日期之间的时间差异......
  • 我,完全,不要,按照你的意思。这显示了hoursminutes。你想达到什么目标?
  • 我希望它以小时为单位显示不同的日期......如果第一个是:2014-02-06 20:30:30,第二个是:2014-02-07 19:30:30 时差为 23.0(23 小时)
  • 你的意思是要互相减去一段日期?对不起,我不理解你的意思。
  • 好的,它几乎可以工作了!我只需要得到分钟!谢谢!
猜你喜欢
  • 1970-01-01
  • 2016-07-05
  • 2017-05-09
  • 2017-01-09
  • 1970-01-01
  • 2011-02-19
  • 1970-01-01
  • 2013-06-06
  • 2016-08-15
相关资源
最近更新 更多