我正在尝试在Carbon
对象中设置日期的时区。它在本地工作正常,但在我的生产盒上它一直给我Bad timezone
错误。
我试过了:
$date->setTimezone('7');
$date->setTimezone('+7');
$date->setTimezone('7:00');
$date->setTimezone('+7:00');
$date->setTimezone('UTC 7');
$date->setTimezone('UTC +7');
$date->setTimezone('UTC 7:00');
$date->setTimezone('UTC +7:00');
不知道为什么它在我的生产箱上抱怨。无法找到要在此处输入的“正确”格式的文档。有人可以帮忙。
仅供参考:本地是windows,prod是Ubuntu盒。
答案 0 :(得分:34)
您可以使用以下方式更改时区:
$timestamp = '2014-02-06 16:34:00';
$date = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'Europe/Stockholm');
$date->setTimezone('UTC');
这种格式适用于我的本地(Ubuntu)和prod(Redhat)项目。
答案 1 :(得分:11)
我认为你应该参考official php timezone list。在您的情况下,您可以使用
$date->setTimezone('Asia/Phnom_Penh');
表示UTC + 7:00。
答案 2 :(得分:0)
对于想知道的人,您可以像这样链接时区:
Carbon::now()->timezone('Europe/Stockholm')