`
fumi520
  • 浏览: 13933 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

国外虚拟主机时区设置问题

阅读更多
今天在我租的虚拟主机上写php,发现时间显示的是美国的时间,查了一下资料。找到了解决办法。

在虚拟主机的根目录下(我的是public_html),找到.htaccess文件,备份后,拷贝一份到本地,打开后添加一行:
SetEnv TZ Asia/Tokyo  保存上传就可以了。
如果你在上海 就这样写:
SetEnv TZ Asia/Shanghai

其他可以使用的大陆时区还有:Asia/Chongqing、Asia/Shanghai 、Asia/Urumqi(依次为重庆,上海,乌鲁木齐);

港台地区可用:Asia/Macao、Asia/Hong_Kong、Asia /Taipei(依次为澳门,香港,台北);还有新加坡:Asia/Singapore;

如果想根据程序分别设定,就参看下面的文章吧:

现在很多朋友购买国外主机,可是国外主机显示的是当地时间,如何设置成国内时间呢?

所谓的时间问题归根结底也就是“时区”问题,我们首先要知道的是:

1、美国时间和中国时间相差应该是8小时。
2、PHP的时间和MySQL的时间不是相同的。

所以,我们所要做的事情就是:

1、把美国时间改成中国时间。
2、并且要把PHP的时间和MySQL的时间统一。


一、修改PHP时间

听上去有点小复杂,其实很简单。首先我们来改PHP的时间,将这句代码插入到PHP程序中,公共调用页的顶部(也就是要 include_once,require_once到的脚本里,当然你不用_once我也没有意见),确保需要用到时间的页面都必须调用到:复制内容到剪贴板代码:

date_default_timezone_set('PRC') or die('时区设置失败,请联系管理员!');现在测试下:复制内容到剪贴板代码:

echo date('Y-m-d H:i:s');怎么样?哇哈哈,正确显示中国时间了,当然你要说北京时间我也没意见。至于那个参数PRC是什么意思,我记得是某个神奇的土地之缩写,不用管它,照搬就行了,错不了的。成功了?NO,不要得意得太早,在MySQL里输入语句SELECT NOW();你会惊愕的发现,MySQL的时间还是美国时间。不急,我们继续下一步。



二、修改MySQL时间

如果你在写程序的时候,习惯了用类或者函数,那么恭喜你,这一步你同样只需要一次复制粘贴操作就能将它解决。如果你在写程序的从来不用类或者函数,那么我会祈祷耶稣和释迦牟尼一同保佑你,不会在改程序的时候累得很惨,同时希望你改掉这个不好的编程习惯。那么,就请在PHP程序有数据库连接的下一语句(只有 1次,就加1句;若有无数次,就加无数次……这个编程习惯,还是重要啊)加入如下代码:复制内容到剪贴板代码:

mysql_query("SET time_zone = '+8:00'") or die('时区设置失败,请联系管理员!');再去SELECT NOW();下,你会惊喜地发现,MySQL也是中国时间了。为什么是+8:00呢?前面我说过了,中国时间和美国时间差8小时,往那个那个貌似向东还是向西的方向来着?(不好意思我是路盲,我在怪地球是圆的)。OK,现在MySQL的时间也搞定了,我相信现在就会有比较严谨朋友问了:那你如何证明PHP 的时间和MySQL的时间是同步呢?啊……这个人与人之间的信任,还是重要的,就像汇款,哈哈,那我们来做个测试吧:复制内容到剪贴板代码:

//这里是页面的开头,用于改PHP时间的代码。
date_default_timezone_set('PRC') or die('时区设置失败,请联系管理员!');

//-------------------------------------------------------------
//
// 这里写数据库连接的代码,别懒,自己写。
//
//-------------------------------------------------------------

//数据库一旦连接,紧跟着就是改MySQL时间的代码。
mysql_query("SET time_zone = '+8:00'") or die('时区设置失败,请联系管理员!');

//显示PHP的时间
echo date('Y-m-d H:i:s');

echo


//显示MySQL的时间
$mysql_time = mysql_query("SELECT NOW()");
$mysql_rows = mysql_fetch_row($mysql_time);

echo $mysql_rows[0];刷新就ok了。
分享到:
评论

相关推荐

    解决Docker容器时区及时间不同步问题的方法

    再查看宿主机时间是正确,这样肯定是容器启动时未将时区与宿主机保持同步了,由于测试镜像是由dockfile直接构建,因此问题基本了定准在dockerfile文件上了。 打开dockerfile检查后发现确实确失与宿主机时区同步设置...

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

    在编程领域,尤其是在Windows系统开发中,理解和处理时区设置是一项重要的任务。本文将深入探讨“时区设置代码-一个完整的C++类”的相关知识点,包括`SetTimeZoneInformation`函数的使用、注册表操作以及如何在C++中...

    系统时区设置

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

    补全win7时区设置

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

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

    OpenWRT 中的 NTP 时间同步和时区设置 OpenWRT 是一个基于 Linux 的嵌入式操作系统,广泛应用于路由器和其他嵌入式设备中。由于 OpenWRT 的广泛应用,因此设置正确的时间同步和时区变得非常重要。下面将详细介绍 ...

    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/...

    java的时区问题

    Java的时区问题是一个复杂而重要的主题,尤其是在全球化的软件开发中。时区涉及到日期、时间的计算,以及与特定地理位置相关的夏令时调整。Java提供了丰富的时区支持,但理解其工作原理对于开发出正确处理时间的软件...

    c# 获取设置时区SetTimeZoneInformation

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

    Linux修改时区和时间

    Linux 系统中,时区和时间的正确设置对于系统的运行和维护至关重要。本文将详细介绍 Linux 系统中时区和时间的修改方法。 一、修改时区 时区的设置对系统的时间戳和日期的正确性产生重要影响。在 Linux 系统中,...

    java时区问题

    Java时区问题是一个在开发过程中常见的困扰,尤其是在处理与日期时间相关的业务时。Java通过`java.util.TimeZone`类来管理全球不同的时区信息。时区是地球上的地理位置,它决定了本地时间与协调世界时间(UTC)之间...

    基于PHP的ISPConfig php开源虚拟主机管理程序.zip

    过程中可能需要配置Apache或Nginx的虚拟主机设置,以便ISPConfig可以通过Web访问。 3. **数据库设置**:创建一个新的MySQL数据库,用于存储ISPConfig的配置信息和用户数据。在安装过程中,会提示输入数据库连接参数...

    C#修改Windows时区

    本篇文章将深入探讨如何使用C#来修改Windows操作系统的时区设置,以及如何通过提升进程权限来实现这一功能。 首先,修改Windows时区涉及到操作系统级别的设置,这通常需要系统权限。在C#中,我们可以通过P/Invoke...

    Linux修改系统时区

    在Linux中,查看当前系统时区可以通过多种方式实现,其中一种常用的方法是通过编辑`/etc/sysconfig/clock`文件来查看或更改时区设置。具体步骤如下: ```bash # vi /etc/sysconfig/clock ``` 打开`/etc/sysconfig/...

    解决 Win 7 无法显示完整时区的问题

    在Windows 7操作系统中,有时用户可能会遇到与时区相关的各种问题,比如无法识别时区、更改时区功能失效或者时区选项显示为空白。这些问题可能是由于系统注册表中的相关设置出现了异常。针对这些情况,我们可以采取...

    WIN7系统时区 大全

    在Windows 7操作系统中,时区设置是一项至关重要的功能,它允许用户根据所在地理位置调整系统时间,以确保与当地时间同步。然而,某些简化版或定制版的Windows 7可能缺少完整的时区信息,导致用户无法找到正确的时区...

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

    6. **区域设置问题**:确保你的区域设置正确无误。在“控制面板”中更改区域设置,然后尝试修改时区。 7. **系统更新或补丁**:有时,安装的Windows更新或补丁可能会影响时区设置。检查最近的更新,如果有必要,...

    android自动修改时区(原创)

    5. **设置新时区**: 调用`TimeZone.setDefault()`方法,传入新时区的ID,来改变全局默认时区。这样,系统和所有应用都将使用新的时区。 6. **处理权限**:由于涉及到系统设置的修改,需要在AndroidManifest.xml中...

    android时区

    Android 时区设置 Android 时区设置是 Android 操作系统中的一项重要功能,允许用户根据自己的位置和需求来设置时区。时区设置对用户的日常生活和工作产生了重要影响,例如,正确的时区设置可以确保用户的闹钟、...

    时区不正确问题1

    要解决这个问题,你需要确保Docker容器内的时区设置与宿主机一致。可以通过`docker exec`命令进入容器,然后执行`cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime`命令将时区设置为上海,接着运行`date`命令...

    Linux下时区与时间设置方法

    Linux系统中设置和管理时区与时间是一项基础而重要的任务,尤其是在多用户环境中,或者涉及到跨时区的网络服务。下面详细介绍Linux下时区与...通过学习和掌握相关知识,可以有效地避免时区和时间设置错误带来的问题。

Global site tag (gtag.js) - Google Analytics