gpt4 book ai didi

php: datetime() 2 个日期时间与 2 个变量之间的差异

转载 作者:行者123 更新时间:2023-12-02 06:03:55 25 4
gpt4 key购买 nike

我的数据库中有 4 列,它们是:

Date_in | Time_in | Date_out | Time_out

Date_in 和 Time_in 属于同一类(例如,2013-02-18 13:00:00),date_out 与 Time_out 对应。我想找出和我起床之间的区别:

$start_time = new DateTime("'$list[date_in] "."$list[time_in]'");
$since_start = $start_time->diff(new DateTime("'$list[date_out] "."$list[time_out]'"));

$hours = $since_start->h.' hours';

但它不起作用。我认为我的引号和双引号都搞砸了,因为 "' . 真的让我很困惑..

提前感谢您就如何修复我的代码提出的任何建议!

[编辑]感谢大家的详细帮助!我刚刚意识到服务器不支持 php 5.3,我不能使用 datetime()。

所以我的解决方案是:

$start_time = strtotime("$list[date_in] " . "$list[time_in]");
$end_time = strtotime("$list[date_out] " . "$list[time_out]");
$hours = abs(($end_time - $start_time)/3600);

最佳答案

试试这个,

function datediff( $date1, $date2 )
{
$diff = abs( strtotime( $date1 ) - strtotime( $date2 ) );

return sprintf
(
"%d Days, %d Hours, %d Mins, %d Seconds",
intval( $diff / 86400 ),
intval( ( $diff % 86400 ) / 3600),
intval( ( $diff / 60 ) % 60 ),
intval( $diff % 60 )
);
}

print datediff( "18th February 2013", "now" ) . "\n";

您可以使用 DateTime::diff

  $start_date = new DateTime("2012-02-10 11:26:00");
$end_date = new DateTime("2012-04-25 01:50:00");
$interval = $start_date->diff($end_date);
echo "Result " . $interval->y . " years, " . $interval->m." months, ".$interval->d." days ";

编辑:

结帐链接,

How to calculate the difference between two dates using PHP?

Php Date Time – 7 Methods to Calculate the Difference between 2 dates.

可能对你有帮助。

关于php: datetime() 2 个日期时间与 2 个变量之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14938339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com