`
jackyoo8
  • 浏览: 82750 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

php时区设置老差8个小时解决办法

    博客分类:
  • php
阅读更多
发现一个问题 date("Y-m-d G:i T",time()) 取出来的时间和本地时间老差8个小时,可
我的系统明明是中国
标准时(GMT+8),最后终于找到了问题所在:

原来从php5.1.0开始,php.ini里加入了date.timezone这个选项,默认情况下是关闭的

也就是显示的时间(无论用什么php命令)都是格林威治标准时间

和我们的时间(北京时间)差了正好8个小时,有以下3中方法可以恢复正常的时间。

1,最简单的方法就是不要用php5.1以上的版本

2,如果一定要用,而且不能修改php.ini,则需要在关于时间的初始化的语句的
上面加上 date_default_timezone_set (XXX);

3,一劳永逸,仅限能修改php.ini。打开php.ini查找date.timezone 去掉前面的分号
= 后面加XXX,重启http服务(如apache2或iis等)即可

关于XXX,大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次为重
庆,上海,乌鲁木
齐)
港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北)
还有新加坡:Asia/Singapore
老外好像把北京漏调了
其他可用的值是:Etc/GMT-8 ,Singapore ,Hongkong ,PRC
PRC是什么?PRC是中华人民共和国啊-_-
以上都是我从php官方说明档里整理出来的GMT-8下面的地区,可能会有遗漏
你可以http://www.php.net/docs.php上查到更多的地区

由于程序最后还是会把地名转为时区来计算,所以当你使用的不是内置的区域的时候,程序将
自动使用格林威治标
分享到:
评论

相关推荐

    java得到的时间与系统时间差N个小时的解决办法.doc

    在解决 Java 获取时间与系统时间差 N 个小时的问题时,需要首先找到 Java 的时区设置文件。这个文件通常位于 `jre` 文件夹下的 `lib\zi` 文件夹中。在这个文件夹中,存在多个时区设置文件,每个文件对应着不同的时区...

    时区设置代码-一个完整的C++类

    本文将深入探讨“时区设置代码-一个完整的C++类”的相关知识点,包括`SetTimeZoneInformation`函数的使用、注册表操作以及如何在C++中实现这些功能。 `SetTimeZoneInformation`是Windows API提供的一个函数,用于...

    Mysql时区相差8小时解决方案

    在使用MySQL数据库的过程中,有时会遇到时间显示与预期时间相差8小时的问题,这通常是由于时区设置不正确导致的。本文将深入探讨这个问题,并提供三种有效的解决方案。 首先,我们需要了解MySQL中的时间处理机制。...

    Windows2008上运行java产生8小时时差问题原因

    添加了这些设置后,Java 应用程序将使用 GMT+8 时区,这将解决 8 小时时差问题。 在某些情况下,可能需要手动设置 Java 的时区设置。在这种情况下,可以通过修改 Java 的配置文件或使用 Java 的命令行参数来设置...

    java中 new date() 打印出的时间与系统时间错了八小时的解决方法

    总的来说,Java中`new Date()` 出现时间差的问题主要源于时区设置,可以通过调整JVM时区或者在代码中设定时区来解决。同时,不要忽视操作系统自身的时区设置,因为它可能会影响到其他非Java程序的时间显示。理解并...

    openwrt知识总结(ntp时间同步+时区设置)

    解决这个问题可以通过在调用 `localtime` 函数之前调用 `tzset()` 函数来强制刷新时区信息。例如: ```perl use POSIX qw/tzset/; tzset(); my ($sec,$min,$hour,$mday,$mon,$year,@temp) = localtime(); ``` 这样,...

    java获取系统时间与实际相差8小时的解决方法

    然而,有时我们可能会遇到一个常见问题,即从Java程序中获取到的时间与实际时间相差8小时,这主要是由于时区设置不正确导致的。这个问题在跨时区开发和运行应用时尤为突出。 首先,我们需要理解Java中的日期和时间...

    JAVA8时间插入mysql少了8小时的解决办法(csdn)————程序.pdf

    在Java 8中,开发人员经常遇到一个棘手的问题,即在使用MyBatis或任何其他JDBC驱动程序将`LocalDateTime`对象插入MySQL数据库时,时间会比预期少8小时。这个问题通常与时区设置有关,特别是涉及到数据库服务器和Java...

    Spring项目前端显示的时间差8小时分析

    标题“Spring项目前端显示的时间差8小时分析”主要涉及的问题是时区问题,这在分布式系统和Web开发中是常见的挑战。Spring框架被广泛用于Java后端开发,而时间差问题通常出现在处理日期和时间的转换时。让我们深入...

    解决jdk相差8小时

    总的来说,解决JDK相差8小时的问题,需要理解Java中的日期时间处理机制,正确设置时区,合理使用日期时间类,并在必要时进行时区转换。了解这些知识点有助于避免和解决类似的问题,确保程序在处理时间相关的逻辑时...

    补全win7时区设置

    在Windows 7操作系统中,调整时区设置是用户根据自身地理位置和需求来校准系统时间的重要功能。然而,有时默认的时区选项可能并不全面,尤其是对于某些特定的国家和地区,比如澳大利亚和美国的部分时区。在这种情况...

    c# 获取设置时区SetTimeZoneInformation

    在C#编程中,处理与时间相关的任务时,有时我们需要更改系统的时区设置。`SetTimeZoneInformation` API是一个Windows API函数,它允许程序修改系统时区。虽然C#本身提供了.NET框架来处理日期和时间,但若需要底层...

    系统时区设置

    关于系统时区设置的问题,详细的解析

    报警数据库查询(处理8小时时差)

    在“报警数据库查询(处理8小时时差)”这个主题中,我们将探讨如何在KingSCADA中进行报警查询,并针对8小时时差问题进行详细讲解。 首先,报警数据库是KingSCADA系统的核心组件之一,它存储了所有设备或系统的报警...

    打开时间设置提示“无法识别您当前的时区,请选择一个有效的时区”解决方案.rar

    在使用Windows操作系统时,有时会遇到一个常见的问题,即当你尝试调整系统时间或日期时,系统弹出警告提示:“无法识别您当前的时区,请选择一个有效的时区”。这个问题通常是由于注册表中的某些关键设置丢失或错误...

    linux 时间和时区设置

    设置时区和同步时间 tzselect  TZ=’Asia/Shanghai’; export TZ 修改时区 vi /etc/sysconfig/clock ZONE=Asia/Shanghai mv /etc/localtime /etc/localtimebak ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/...

    Spark Sql中时间字段少8个小时问题解决

    综上所述,在处理Spark SQL中时间字段少8个小时的问题时,通过设置正确的时区配置,可以有效地解决该问题。此外,对于时间数据的处理,始终要注意时区的转换和处理,以确保数据的准确性和一致性。

    PHP 时区列表[时差]

    PHP 时区列表[时差] 数据库内容依据,PHP手册(2011-04-18)中“所支持的时区列表”,更多信息请查看此页内容。 测试时,使用的函数有:date、date_default_timezone_set、date_default_timezone_get。 注意:...

    解决win7中时间和时区无法修改Time-Zones

    "Time Zones.reg"文件通常是一个注册表导入文件,用于修复与时区相关的注册表项,从而解决此类问题。 Windows中的时区设置是通过“控制面板”中的“日期和时间”功能进行的,它允许用户根据所在的地理位置调整系统...

    Java语句获取系统时间与实际时间相差8小时的解决办法.doc

    最近有遇到java的时间不对的事件,现象:通过java语句获得系统时间,取得的时间总是比系统时间少8个小时,获得的总是格林尼治时间(0时区的时间),检查系统时间确实是正确的,时区为GMT 8:00北京……等;...

Global site tag (gtag.js) - Google Analytics