我使用 Laravel 并将我的应用程序部署在 Docker 上
我使用 carbon package 进行时间管理,并将时区设置为 Asia/Tehran 但现在我发现了一个问题,时间向前移动了一小时,我不希望这一小时向前移动。
有办法让我后退一小时吗?
Carbon::now("Asia/Tehran"); // Asia/Tehran (+04:30)
但是我需要这个
Carbon::now("Asia/Tehran"); // Asia/Tehran (+03:30)
DateTime(以及 Carbon)依赖于 https://pecl.php.net/package/timezonedb 来了解哪个城市有哪个偏移量。您需要更新它以获取最新信息。如果它尚不可用,您需要明确询问偏移量:
Carbon::now('+03:30')
使用
timezonedb
包解决你的问题
pecl install timezonedb
或者简单地下载并安装它 https://pecl.php.net/package/timezonedb/
安装后将此行添加到
php.ini
extension=timezonedb.so