這是我的代碼$time = '2019-12-16T10:14:35.000000Z';$var = new Carbon($time);$var = $var->setTimezone('Asia/Dhaka')->format('Y-m-d H:i:s');我期待的回報是' 2019-12-16 4:14:35 '我得到的回報' 2019-12-16 10:14:35 '如果我刪除格式功能,我會得到正確的時區' 2019-12-16T4:14:35.000000Z '顯然 setTimeZone 不適用于 Format。我在這里想念什么?我知道可能存在重復問題,但似乎沒有一個解決方案對我有用。
3 回答

MMMHUHU
TA貢獻1834條經驗 獲得超8個贊
如果您的源時間戳始終在UTC時區。所以將您的代碼更改為:
$var = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'UTC');
$var = $var->setTimezone('Asia/Dhaka');

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
您可以像這樣設置時區
$time = '2019-12-16T10:14:35.000000Z';
$var = Carbon::createFromFormat('Y-m-d H:i:s', $time, 'Asia/Dhaka');

梵蒂岡之花
TA貢獻1900條經驗 獲得超5個贊
嘗試這個:
$var = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'Europe/Madrid');
$var = $var->setTimezone('Asia/Dhaka');
- 3 回答
- 0 關注
- 112 瀏覽
添加回答
舉報
0/150
提交
取消