更改 Php 中的默认时区

发布于 2024-12-09 03:25:00 字数 270 浏览 0 评论 0原文

我的服务器托管在美国,我希望我的 php 脚本遵循英国时区,所以我所做的是使用下面描述的 php 时区函数更改时区

date_default_timezone_set("Europe/London");

它在我的 wamp 服务器上运行良好,但是当我将文件上传到远程服务器时它忽略此功能并使用美国的默认时间。

我发现我的服务器正在使用 php4 并且此功能适用于 php5 或更高版本,所以还有其他方法可以处理 php4

谢谢

I have my server hosted in US and i want my php script to follow uk timezone , so what i did is i changed the timezone by using php timezone function desscribed below

date_default_timezone_set("Europe/London");

It works fine on my wamp server but when i upload files to my remote server it is ignoring this function and using the default time of US.

What i found is my server is using php4 and this function works on php5 or higher so is there any other way to deal with php4

Thank You

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

牵你手 2024-12-16 03:25:00

使用 PHP 更改时区是在版本 5.1 中添加的,因此在没有自定义时间函数的情况下尝试更改 PHP 4 的时区是不可能的。

您最好的选择是切换到定期更新 PHP 的现代托管提供商,或者为自己购买一台服务器,在我看来,Rackspace 的价格令人惊叹,而 LiquidWeb 的支持令人惊叹,这样您就可以运行您想要的服务器软件的确切版本。

但是,如果您绝对想坚持使用 PHP4,则需要创建自定义时间函数,例如:

function gmt_time()
{
    // Return time minus current timezone second offeset
    return time() - date("Z", time());
}

function my_time($offset = 0)
{
    // Return GMT time + offset hours
    return gmt_time() + ($offset * 60 * 60);
}

echo date("g:iA, l jS F Y", my_time(11)); // GMT +11 time.

但是,请注意 date() 函数中时区参数的使用,例如 Z、T、P等不会改变。

Changing the timezone with PHP was added in version 5.1, so any attempt to try and change PHP 4's timezone without custom time functions is not possible.

Your best bet is to switch to a modern hosting provider that regularly updates PHP, or get yourself a server, in my opinion Rackspace have amazing prices while LiquidWeb have amazing support, that way you can run the exact versions of server software you want.

However if you absolutely want to stick with PHP4, you would need to create custom time functions, for example:

function gmt_time()
{
    // Return time minus current timezone second offeset
    return time() - date("Z", time());
}

function my_time($offset = 0)
{
    // Return GMT time + offset hours
    return gmt_time() + ($offset * 60 * 60);
}

echo date("g:iA, l jS F Y", my_time(11)); // GMT +11 time.

However, please note that usage of the timezone parameters in the date() function such as Z, T, P and so on will not change.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文