【发布时间】:2014-08-05 16:02:03
【问题描述】:
我搜索了很多,但我找不到这个问题的答案。我已经正确设置了服务器和 php.ini 的时区。当我在服务器上使用“日期”命令时,它给了我正确的答案。但如果我使用这个 PHP 脚本:
<?php
// include 'cal_config.php';
// include 'cal_matchclass.php';
// $_mail = $_GET["mail"];
$dataTime = date("Y-m-d H:i:s");
echo $dataTime;
echo "\n".date_default_timezone_get();
?>
它显示的日期/时间是 6 小时后! 但时区是正确的(在这种情况下是欧洲/罗马)。
有人有什么建议吗?请帮忙,因为当我把所有事情都做对时,我真的不明白出了什么问题。谢谢大家。
这是 linux 上“date”命令的输出:
mar 5 ago 2014, 18.06.15, EDT
这是上面 php 脚本的输出:
2014-08-06 00:06:12
Europe/Rome
【问题讨论】:
-
你是如何设置时区的?您是在 php.ini 中设置了
date.timezone的设置还是调用了date_default_timezone_set()? -
我在 php.ini 中使用了 date.timezone
-
我认为您可能将系统时间设置为不正确的时区。运行 linux 命令的输出是什么:
date +%Z?