首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >服务器时间错误

服务器时间错误
EN

Stack Overflow用户
提问于 2010-05-20 17:54:45
回答 4查看 6.1K关注 0票数 5

所以我来自英国,在美国有主机。我联系了我的主人,说我的服务器时间设置为比GMT晚6个小时。他们说我需要在我的CMS中修改这个。

我该怎么做呢?每当我输入now()的时候,我就会得到错误的时间。

以前从来没有见过这种情况,有没有人能提供一些建议?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-05-20 17:59:22

您可以使用PHP更改时区

代码语言:javascript
代码运行次数:0
运行
复制
putenv("TZ=Europe/London");

或者,如果这会产生错误:

代码语言:javascript
代码运行次数:0
运行
复制
date_default_timezone_set('Europe/London');

或者,如果您可以访问您的php.ini (可能不是由于您的主机)

代码语言:javascript
代码运行次数:0
运行
复制
date.timezone = "Europe/London"

将设置更改为上面的设置,您应该就可以了。除此之外,您还可以使用PHP设置php.ini。

代码语言:javascript
代码运行次数:0
运行
复制
ini_set('date.timezone', 'Europe/London');

http://www.php.net/manual/en/timezones.europe.php

编辑:

在我急于回答的时候-你可以写GMT而不是欧洲/伦敦

票数 9
EN

Stack Overflow用户

发布于 2010-05-20 18:03:42

对于MySQL -您可以在查询前执行SET time_zone = 'GMT'以设置时区time_zone config docs

对于PHP -您可以使用其中一个supported timezones执行date_default_timezone_set()。您还可以使用.htaccess指令设置该值:

代码语言:javascript
代码运行次数:0
运行
复制
php_value date.timezone UTC
票数 1
EN

Stack Overflow用户

发布于 2010-05-20 17:57:10

您可以计算出服务器时间设置为的美国位置的前几秒,并将该值添加到时间戳中以获得正确的时间。

例如,如果服务器在纽约,则这比伦敦时间晚18000秒。因此,获得正确的日期应该是:<?php $now = date('d M Y', (time() + 18000)) ?>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2872619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档