从数据库添加两次


Adding two times from database

我是PHP的新手,我试图尽可能多地解决这个问题,但仍然没有得到/知道正确的答案。

我在数据库中有一个包含 2 列的表,时间数据类型为

Lunch     Break
00:01:00  00:00:30

我试图获取数据并添加两次,但我总是得到错误的值。我有这个代码:

 $time[$x] =$row['break'] + $row['lunch'];
 $totalAux[$x] = $time[$x]; 

输出为:"00:00:00">

我试试这个:

 $time[$x] =strtotime($row['break']) + strtotime($row['lunch']);
 $totalAux[$x] = $time[$x];     
并获得"00:00

:00"的输出

然后最后尝试了这个:

 $time[$x] =strtotime($row['break']) + strtotime($row['lunch']);
 $totalAux[$x] = date('H:i:s', $time[$x]);

输出为:"09:33:14"请帮助伙计们.

您可以使用 MySQL 中的 ADDTIME 函数:

SELECT Lunch, Break, ADDTIME(Lunch, Break) FROM table_name;

SQLfiddle

为什么不使用 TIMEDIFF(( 和 ADDTIME(( 函数,它们是为了获得差异或分别在 mysql 中添加时间,以便在那里解决它,php只需要拿起它。

您还需要使用 TIME_FORMAT(( 才能获得小时、分钟和秒:

SELECT TIME_FORMAT(ADDTIME(lunch, breaks),'%H:%i:%s') as TimeTotal 
FROM lunchbreaks;
SELECT TIME_FORMAT(TIMEDIFF(lunch, breaks),'%H:%i:%s') as TimeDifference 
FROM lunchbreaks;

观看演示