【问题标题】:How to change default GMT timezone of php 5.4 application on OpenShift?如何在 OpenShift 上更改 php 5.4 应用程序的默认 GMT 时区?
【发布时间】:2014-06-21 04:39:20
【问题描述】:

我最近订阅了 OpenShift 并部署了一个新的 php 5.4 应用程序,一切正常,但我似乎无法更改默认的 GMT php 时区。

这里定义了这个 GMT 时区:

> grep 时区 ~/php/configuration/etc/php.ini

date.timezone = GMT

我可以编辑这个 php.ini 文件并将时区更新为我想要的值(美国/蒙特利尔),但只要重新启动 php 墨盒(只需执行 git push 或发出 'ctl_app restart'例如服务器上的命令),有一个未知的进程将 php.ini 恢复为 openshift 出厂默认设置,所以我放弃了我的更改,时区恢复为 GMT。

有什么想法吗?

谢谢

【问题讨论】:

    标签: php timezone openshift


    【解决方案1】:

    您可以在运行时使用ini_set() 修改php.ini 设置。修改仅对当前运行有效。

    ini_set('date.timezone', 'america/new_york');
    ini_set('date.timezone', 'europe/london');
    ini_set('date.timezone', 'america/sao_paulo');
    ... etc.
    

    此设置将影响日期和时间函数的行为,例如 date()

    这是list of supported timezones

    【讨论】:

    • 我想从某人@OpenShift那里知道php.ini文件是否一直恢复为默认值(..但同时它是可写的)是否是一个错误,并且如果有更永久的更新方式,而不必破解我的应用程序代码。但是,为了帮助其他人,您的回答确实解决了我的问题,谢谢。我正在使用 Yii 框架(但可能是其他框架),并在我的根/主 index.php 文件中添加了该 ini_set() 命令,该命令在每个请求上都会被调用,该命令存储在 redhat OpenShift 上的 ~/php 中。跨度>
    • 我也希望@openshift 对他们的可写 php.ini 文件有所了解,该文件在需要重启后会重置。似乎毫无意义。他们建议编辑 php.ini 文件的方法没有解释。由于它是我们的应用程序,我们应该能够通过 shell 访问更改配置。有什么问题?为什么没有文档?
    猜你喜欢
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多