2013-04-26 52 views
-2

我想将55分钟添加到存储在数据库中的设置时间。我正在运行MySQL Query来获取时间信息。这存储在PHP脚本中作为 $row['login_time']PHP将时间添加到现有的存储时间

如果以类似2013-04-25 22:48:53 EDT的格式存储在数据库中。

我试图在这段时间增加55分钟。

我有以下的脚本,但它显示在1969年

$seconds = 55 * 60; 
echo date("Y-m-d H:i:s", $row['login_time'] + $seconds); 
+0

POSS。 DUP。 http://stackoverflow.com/questions/8169139/adding-minutes-to-date-time-in-php – user1477388 2013-04-26 17:51:40

+1

使用DateTime类:http://www.php.net/manual/en/datetime.add.php – millimoose 2013-04-26 17:52:12

+1

您的代码不起作用,原因是“一”+“五”不返回“六”。 – 2013-04-26 17:53:33

回答

2

的值应该在DATETIME字段转换为以秒为单位的值,你可以使用PHP函数strtotime

$seconds = 55 * 60; 
echo date("Y-m-d H:i:s", strtotime($row['login_time']) + $seconds); 
0

您需要在将日期转换为UNIX时间戳后添加秒数。

$seconds = 55 * 60; 
$timestamp = strtotime(date("Y-m-d H:i:s", $row['login_time'])) + $seconds; 
echo $timestamp; 
0

没有必要让PHP涉及:

UPDATE yourtable 
SET timefield = timefield + INTERVAL 55 MINUTE 

... 
SET timefield = DATE_ADD(timefield, INTERVAL 55 MINUTE)