PHP打印错误的时区


php printing wrong timezone

我在吉隆坡,但是当我在php中打印当前时区时,它显示:

欧洲/柏林

echo date_default_timezone_get();

不是应该显示Asia/Kuala_Lumpur吗?

我使用的是localhost

你可以检查一下你的php.ini文件,里面有一个配置时区的选项。

date.timezone=[Set your Value]

您可以在下面的链接中获得您可以配置的时区值:

http://php.net/manual/en/timezones.php

对于您的情况,应该是:Asia/Kuala_Lumpur

date_default_timezone_get返回默认时区:

  1. 读取使用date_default_timezone_set()设置的时区函数(如有)
  2. 如果PHP>= 5.4.0:读取TZ环境变量(如果非空)
  3. 读取date.timezone ini选项的值(如果设置了)
手动:

仅在PHP 5.4.0之前:查询主机操作系统(if操作系统支持和允许的)。这需要一个算法猜猜是哪个时区。这绝不可能正确地工作每一个情况。当到达此阶段时将显示警告。不依靠它来猜对,并设定日期。时区到正确的时区。