首先,在有人写这篇文章之前,我知道有很多关于它的主题,我已经检查了很多它们,但对我来说没什么用。
我有mysql 2 datetime字段(date_in,date_out)我只需要从date_out中减去日期,这在php 5.3中很容易,但我在someones服务器上并且无法更新它...两个字段中的日期是格式化的像这样(2014-06-02 16:43:47)
下面的示例可以正常工作(我发现它在堆栈的某个地方)
$start = new DateTime('2010-10-12');
$end = new DateTime();
$days = round(($end->format('U') - $start->format('U')) / (60*60*24));
但是当我从数据库更改$ start和$ end到我的数据时,最后一行$ days抛出错误( - >格式('U'))似乎是个问题。如何解决这个问题?
(结束/开始之间的差异最多不会超过小时)
答案 0 :(得分:1)
我终于弄明白了!
$date_inA = $sql_array[3];
$date_inB = new DateTime($date_inA);
$date_outA = $sql_array[4];
$date_outB = new DateTime($date_outA);
$diff = round(($date_outB->format('U') - $date_inB->format('U')) / (60*60*24));
我需要将字符串对象值更改为datetime对象,我认为它已经是DB中的日期时间对象...