Я пытаюсь установить часовой пояс для даты в 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');
Не знаю, почему он жалуется на мою производственную коробку. Также не могу найти документацию о том, что является «правильным» форматом для ввода здесь. Может кто-нибудь, пожалуйста, помогите.
К вашему сведению: local это windows, а prod это Ubuntu box.
Вы можете изменить часовой пояс с этим:
$timestamp = '2014-02-06 16:34:00';
$date = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'Europe/Stockholm');
$date->setTimezone('UTC');
этот формат работает нормально для моего проекта Local (Ubuntu) и prod (Redhat).
Я думаю, что вы должны обратиться к официальный список часовых поясов php. В вашем случае вы можете использовать
$date->setTimezone('Asia/Phnom_Penh');
для UTC + 7: 00.