Laravel - 如何将以秒为单位的时间转换为人类可读的时间

use*_*561 3 laravel

在我的 Laravel-8 中,我的视图刀片中有以下内容:

{{$duration['time_spent'] ?? '' }}
Run Code Online (Sandbox Code Playgroud)

time_spent 以秒为单位。如何将其转换为人类可读的小时数

例如,4 小时 20 分钟

time_spent 类似于:124323.4

当我这样做的时候

{{$duration['time_spent']->diffForHumans() ?? '' }}
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:

在 float 上调用成员函数 diffForHumans()

我该如何解决?

谢谢

V-K*_*V-K 7

通常你可以使用 Carbon 来执行dateLaravel 中的所有操作(https://carbon.nesbot.com/)

对于您的任务:

CarbonInterval::seconds($duration['time_spent'])->cascade()->forHumans();
Run Code Online (Sandbox Code Playgroud)

UPD:刀片文件

\Carbon\CarbonInterval::seconds($duration['time_spent'])->cascade()->forHumans();
Run Code Online (Sandbox Code Playgroud)