0
我正在制定一个系统,人们可以开始和停止计算所花时间的东西。这是通过以下方式完成的:Laravel/Carbon将两个时间戳添加在一起?
当按下“开始”按钮时,日期被添加到该行的数据库表中。
当按下“停止”按钮,日期(结束日期)加入然后我通过计算差值:
$startTime = \Carbon\Carbon::parse($task->date_start); $finishTime = \Carbon\Carbon::parse($task->date_complete); $totalDuration = $finishTime->diffInSeconds($startTime);
而且还“timeSpent” $totalDuration
被存储为时间戳。
需求已更改,以便用户可以停止/启动,但仍然保留总时间。我的想法是:
通过与以下相同的过程,timeSpent
始终存储,所以如果用户再次单击开始/停止,我可以只计算以前完成的差异,然后将其添加到存储在里面的timeSpent
数据库,但我似乎无法弄清楚如何做到这一点。我曾尝试:
$totalTimeSpent = strtotime($task->time_spent) +
strtotime($totalDuration);
然后再次对其进行分析:
$total = \Carbon\Carbon::parse($totalTimeSpent);
但这得来了一个错误:
Failed to parse time string (1463184003) at position 7 (0): Unexpected character
有人能提出一个替代?