gpt4 book ai didi

Laravel + 碳 + 时区

转载 作者:行者123 更新时间:2023-12-04 12:34:35 29 4
gpt4 key购买 nike

我已经在 config/app.php 中配置了时区至 Europe/Lisbon .
如果我做 return date_default_timezone_get(); , 返回 Europe/Lisbon就像我想要的。
到现在为止还挺好!
当我这样做时 Carbon::now()它返回例如 16 小时,而当前时间是 17 小时。有人可以解释为什么不考虑夏令时吗?
我使用的是 Laravel 7.16、PHP 7.4
问候
编辑 1:代码图像 + 时间 | https://imgur.com/pfh6uij
编辑 2:总是完成 php artisan optimize:clear当我更改配置中的某些内容时清除所有缓存。
编辑 3:模型上的 created_at 和 updated_at 时间正确。
编辑 4:return Carbon::now()返回糟糕的时间。做 dd(Carbon::now())返回正确的值,时区配置在 config/app.php | dd() 示例 -> date: 2020-07-08 17:25:28.935949 Europe/Lisbon (+01:00)编辑 5:在 github 上打开了一个问题 -
https://github.com/laravel/framework/issues/33475
编辑 6:就我而言,我使用 php date() 函数来解决该问题。不是我想要的方式,但可以完成工作...

if (date(now()) > $subscriber->token_expire_date)
{
// return not found response
return $this->response(false, 410, 'The token has expired.', []);
}

最佳答案

Carbon 使用默认 日期时间 PHP 对象,所以使用 date_default_timezone_set() 函数,例如: date_default_timezone_set('Europe/Lisbon');
或者你定义它 AppServiceProvider App/Providers/AppServiceProvider.php

public function boot()
{
date_default_timezone_set('Europe/Lisbon');
}
或者您可以使用 setTimezone碳法
echo Carbon::now()->setTimezone('Europe/Lisbon')->format('H:i');

关于Laravel + 碳 + 时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62798761/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com