gpt4 book ai didi

php - date_default_timezone_set 和日期可能存在 PHP 错误?

转载 作者:可可西里 更新时间:2023-11-01 13:30:39 24 4
gpt4 key购买 nike

假设这段代码:

<?php
date_default_timezone_set('UTC');
$time = gmmktime(14, 50, 0, 5, 12, 2013);
echo date('Y-m-d H:i:s O', $time).'<br />';
echo gmdate('Y-m-d H:i:s O', $time).'<br />';

date_default_timezone_set('GMT');
$time = gmmktime(14, 50, 0, 5, 12, 2013);
echo date('Y-m-d H:i:s O', $time).'<br />';
echo gmdate('Y-m-d H:i:s O', $time);
?>

在我的本地服务器上我得到了输出:

2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000

但在生产环境中,相同的代码会产生:

2013-05-12 10:50:00 -0400
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000

改变机器的时间不会以任何方式影响输出。

一些信息:

$ date +%Z
GMT
$ date +%z
+0000
  • PHP 5.3.25 (cli)(构建时间:2013 年 5 月 11 日 09:54:00)
  • CentOS 5.9 版(最终版)

最佳答案

phpinfo() 显示“Olson”时区数据库版本为 0.system,所以我使用了命令

pecl upgrade timezonedb

并添加了

extension=timezonedb.so

到 php.ini

重启服务器后问题已经解决,新的timezone DB version 2013.3

关于php - date_default_timezone_set 和日期可能存在 PHP 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16508760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com