PHP 時區的問題
WILSON PENG
WILSON PENG

PHP 時區的問題

2022-09-22|閱讀時間約 1 分鐘
這支 PHP 的小程式,輸入時間,會顯示回傳的時間:
<?=date("Y-m-d H:i:s T", strtotime($argv[1])).PHP_EOL;?>
放在 command line 執行,如下:
$ php cst.php “2018–04–01 00:00:00 cst”
執行的畫面
多了 14 小時,好神奇。
追 PHP Source 好了,看問題在哪。找到這支定義時區的設定: timezonemap.h
github 的 php-src/ext/date/lib/timezonemap.h
昏倒, 原來差的 14 小時, 是因為有三個不同的時區, 簡稱都是 CST:
  1. 北美中部時區 (Central Standard Time) 是 UTC-6
  2. 中原標準時區 (Central Standard Time) 是 UTC+8
  3. 澳洲中央時區 (Central Standard Time) 是 UTC+9.5 (註: 目前的 PHP, 澳洲中央時區,已改成 ACST)
0
WILSON WAS HERE
如果要發表留言,請先登入註冊會員
領取見面禮
只要設定追蹤作者,即可享有 48小時
Premium 閱讀權限