所以我来自英国并在美国举办。 我联系了我的主人说我的服务器时间比GMT低6小时。 他们说我需要在我的CMS中改变它。
我将如何做到这一点? 每当我把现在()我错了。
之前从未见过,有人可以提出任何建议吗?
答案 0 :(得分:8)
您可以使用PHP
更改时区putenv("TZ=Europe/London");
或者如果产生错误:
date_default_timezone_set('Europe/London');
或者,如果您可以访问您的php.ini(可能不是由于您的托管)
date.timezone = "Europe/London"
将设置更改为上面的设置,您应该没问题。除上述内容外 - 您可以使用PHP
设置php.iniini_set('date.timezone', 'Europe/London');
http://www.php.net/manual/en/timezones.europe.php
急于回答 - 您可以写 GMT 而不是欧洲/伦敦
答案 1 :(得分:1)
对于MySQL - 您可以在查询之前执行SET time_zone = 'GMT'
以设置时区time_zone config docs。
对于PHP - 您可以使用date_default_timezone_set()
之一执行supported timezones。您还可以使用.htaccess
指令设置值:
php_value date.timezone UTC
答案 2 :(得分:0)
您可以计算出服务器时间设置为美国位置前面的秒数,并将此值添加到您的时间戳以获得正确的时间。
例如,如果服务器位于纽约,那么这比伦敦时间落后18000秒。因此,获取正确的日期将是:<?php $now = date('d M Y', (time() + 18000)) ?>
答案 3 :(得分:0)
使用DateTime :: setTimeZone定义时区。文档位于http://www.php.net/manual/en/datetime.settimezone.php