Laravel Carbon 返回不正确的时间

config/app.php我正在开发的 Laravel 应用程序有问题,返回时间不正确,我确实在两个文件上都指定了时区php.ini,并且我确实使用以下命令清除了 Laravel 上的缓存:


php artisan cache:clear

php artisan view:clear

php artisan config:cache

此外,我在更改文件中的时区后重新启动了我的 PHP 服务php.ini。我正在使用 XAMPP 作为服务器。


请注意:唯一正确的时间是使用纯 php 函数!


任何人都可以帮我解决这个问题吗?

http://img2.mukewang.com/6442493d0001212015111051.jpg

桃花长相依
浏览 282回答 1
1回答

绝地无双

时间是正确的:Z在字符串的末尾表示GMT(祖鲁时区)。当在 JSON 响应中输出 Carbon 实例时,它总是转换为 ISO-8601 字符串并以 GMT 时区给出,因为这是在系统之间(以及在 JSON API 中)交换日期信息的标准且非常推荐的方式。如果您尝试传入new Date('2020-08-20T06:46:34.407Z')浏览器,您会看到浏览器自动将其转换为用户时区。如果你试试:Carbon::now()->format('Y-m-d H:i:s.u')您会看到它使用您选择的时区。你也让它出现在输出中:Carbon::now()->format('Y-m-d H:i:s.u e')因此,不同时区的系统/浏览器不会搞砸。最好的办法仍然是在您的服务器端使用 UTC,并且只在最后一刻使用 Asia/Riyadh 来显示您知道在该时区的特定用户的日期。
打开App,查看更多内容
随时随地看视频慕课网APP