Format Timezone for Carbon Date

2020-06-07 04:19发布

I'm trying to set the timezone for a date in a Carbon object. It works fine locally but on my production box it keeps giving me Bad timezone error.

I've tried:

$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');

No idea why it's complaining on my production box. Can't find documentation either on what is the "proper" format to enter here. Can someone please help.

FYI: local is windows, and prod is Ubuntu box.

2条回答
迷人小祖宗
2楼-- · 2020-06-07 04:37

I think you should refer to the official php timezone list. In your case you can use

$date->setTimezone('Asia/Phnom_Penh');

for UTC+7:00.

查看更多
倾城 Initia
3楼-- · 2020-06-07 04:41

You can change the timezone with this:

$timestamp = '2014-02-06 16:34:00';
$date = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'Europe/Stockholm');
$date->setTimezone('UTC');

this format working fine to my Local(Ubuntu) and prod(Redhat) project.

查看更多
登录 后发表回答