1

我正在玩 FengOffice 项目,我是 PHP 的初学者。我想将日志从 GMT 更改为香港时间。但即使我设置

[日期]
date.timezone = "Asia/Hong_Kong"

或者

[日期]
date.timezone = Asia/Hong_Kong

PHP 日志仍然显示 GMT 时间,应用程序日志也是如此。

我还尝试在代码中更改时区:

ini_set('date.timezone', 'Asia/Hong_Kong');
if(function_exists('date_default_timezone_set')) {
    date_default_timezone_set('Asia/Hong_Kong');
} else {
    putenv('TZ=Asia/Hong_Kong');
} 

但没有任何效果。任何人都可以帮忙吗?非常感谢。

4

3 回答 3

3

根据PHP Bug 60723,它于 2012 年 10 月修复,应该在 PHP v5.3.18 和 v5.4.8 中可用。

于 2013-05-01T19:05:53.630 回答
1

日志文件不是由 PHP 编写的,而是由syslog

这以前在这里被报告为错误:https ://bugs.php.net/bug.php?id=45191

这个是正常的。错误日志不是PHP写的,而是 syslog 写的。Syslog 不关心 PHP 的内部时区,因此根据系统时区格式化日志消息。如果不正确,只需更改系统时区。

是 PHP 开发人员收到的响应。要更改日志中的时区,您必须更改系统时间。^^

于 2013-04-07T06:09:52.667 回答
-1
<?php
date_default_timezone_set('America/Los_Angeles');

$script_tz = date_default_timezone_get();

if (strcmp($script_tz, ini_get('date.timezone'))){
    echo 'Script timezone differs from ini-set timezone.';
} else {
    echo 'Script timezone and ini-set timezone match.';
}
?>

而不是这样做

于 2013-04-07T06:10:08.483 回答