如何将服务器时间转换为本地时间?

时间:2010-04-26 10:33:04

标签: php

我的php文件托管在世界其他地方。 date()time()函数返回服务器上的日期/时间。如何转换该日期以使其与我的本地日期/时间相同?

服务器上的日期比当地时间晚10个小时。我可以从服务器时间硬编码并减去它。但是正确的方式是什么,以便不必对任何值进行硬编码?

2 个答案:

答案 0 :(得分:9)

可以使用此功能date_default_timezone_set

date_default_timezone_set('Europe/Zurich');

我认为这会得到它,这是一个list of timezones

希望这会有所帮助:)

答案 1 :(得分:5)

time()不返回“服务器上的时间”,即它返回与本地时区无关的UNIX时间戳(它总是使用GMT作为时区)。 date()根据服务器的时区将此类UNIX时间戳格式化为用户可读格式。您可以使用date_default_timezone_set()设置自定义时区(将其放在index.php或config.php中)。有关支持的时区列表,请查看http://php.net/manual/en/timezones.php

基本上,您可以为每个时区使用time()(它使用固定时区,因此它的值在“不同时区”中相同),而date()与date_default_timezone_set()一起使用印刷日期/时间。