设置PHP应用程序的默认时区

时间:2018-05-05 21:21:46

标签: php date timezone set default

我想知道我们是否也可以使用init_set()函数来设置默认时间。

  • a-我知道我们可以在编辑php.ini时设置时区。
  • b-在PHP上使用Linux time()命令。
  • c- init_set('date.timezone', 'Europe/Edinburgh');

我之所以问这个问题是我在一本书中遇到的另外一个问题。答案只是答案。

这本书错了吗?

它应该是A和C对吗? 感谢

2 个答案:

答案 0 :(得分:0)

还有选项D:使用date_default_timezone_set。您在C中引用的函数实际上是ini_set。所以这三种方式是:

  1. 在php.ini中添加一行:

    date.timezone = "Europe/Edinburgh"

  2. 使用ini_set:

    ini_set('date.timezone', 'Europe/Edinburgh');

  3. 使用date_default_timezone_set:

    date_default_timezone_set('Europe/Edinburgh');

  4. 关于选项2和3的注意事项是每次运行脚本时都必须调用它们。因此,如果您需要为运行的每个脚本更改时区,则更容易使用选项1(假设您具有对php.ini的编辑权限)。

    对于选项B,我认为理论上它可以工作,但你真的想玩系统的时间吗? (提示:否)。

答案 1 :(得分:0)

这个问题的重点不是关于init_set()本身,而是关于指定的值。检查here中的可用时区。它将发出E_WARNING 无效的日期。时区值为“欧洲/爱丁堡”