后重新启动PHP。
time()
继续产生相同的时间戳,即使在我的php.ini中,我在
date.timezone = "Asia/Irkutsk"
和
date.timezone = "Europe/Belgrade"
phpinfo():
date/time support enabled
"Olson" Timezone Database Version 2012.3
Timezone Database internal
Default timezone Asia/Irkutsk
date/time support enabled
"Olson" Timezone Database Version 2012.3
Timezone Database internal
Default timezone Europe/Belgrade
时间戳保持不变。Howcome?
您做错了假设。
UNIX时间戳始终在UTC中。没有例外。更改时区不会改变时期的确切时刻(1970年1月1日),因此此后的秒数将始终是"正确"。
您需要在更改php.ini
我遇到了这个问题并与我的主机交谈,他们解释说,忽略了php.ini中的任何时区设置,并且必须更改.htaccess文件如下;
将其添加到.htaccess
php_value date.timezone "Europe/London"
然后使用
显示echo date('d-m-Y H:i');