web-dev-qa-db-ja.com

カーボン日付のタイムゾーンのフォーマット

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です。

21
Rob

これでタイムゾーンを変更できます:

$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)プロジェクトで問題なく機能します。

38
Safoor Safdar

公式phpタイムゾーンリスト を参照する必要があると思います。あなたの場合には、使用することができます

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

uTC + 7:00。

11
Anton Egorov