我想知道我们是否也可以使用init_set()
函数来设置默认时间。
init_set('date.timezone', 'Europe/Edinburgh');
我之所以问这个问题是我在一本书中遇到的另外一个问题。答案只是答案。
这本书错了吗?
它应该是A和C对吗? 感谢
答案 0 :(得分:0)
还有选项D:使用date_default_timezone_set
。您在C中引用的函数实际上是ini_set
。所以这三种方式是:
在php.ini中添加一行:
date.timezone = "Europe/Edinburgh"
使用ini_set:
ini_set('date.timezone', 'Europe/Edinburgh');
使用date_default_timezone_set:
date_default_timezone_set('Europe/Edinburgh');
关于选项2和3的注意事项是每次运行脚本时都必须调用它们。因此,如果您需要为运行的每个脚本更改时区,则更容易使用选项1(假设您具有对php.ini的编辑权限)。
对于选项B,我认为理论上它可以工作,但你真的想玩系统的时间吗? (提示:否)。
答案 1 :(得分:0)
这个问题的重点不是关于init_set()本身,而是关于指定的值。检查here中的可用时区。它将发出E_WARNING 无效的日期。时区值为“欧洲/爱丁堡”