如何解决 Carbon diffForHumans() 时间不匹配?

How to solve Carbon diffForHumans() time mismatch?

我用Laravel 5.3

对于 Lravel 中的新闻创建持续时间 blade 我使用的模板

echo \Carbon\Carbon::createFromTimeStamp(strtotime($news->approved_at),'Asia/Dhaka')->diffForHumans()

但我发现时间不匹配。

假设approved_at = 2017-05-21 23:33:29

5 分钟后显示 5 分钟前,但显示 4 小时前。我找不到问题请帮助。

您应该将 config/app.php 中的时区设置设置为

'timezone' => 'Asia/Dhaka',

然后在不将时区传递给 Carbon 的情况下调用 echo \Carbon\Carbon::createFromTimeStamp(strtotime($news->approved_at))->diffForHumans()