正如标题所说,任何人都可以解释为什么代码
ini_set( 'date.timezone', 'Europe/Athens' );
有效但
date_default_timezone_set( 'Europe/Athens' );
没有?
我一直在寻找一个转换时间戳的解决方案,我在网上找到的就是使用date_default_timezone_set
。但转换总是有1小时的差异。
然后我发现这个主题“strftime()
function showing incorrect time”正在使用init_set代码(之后我发布了RTM并发现它已在文档中提到)。我尝试了它并且它有效。
但我没有找到答案,为什么date_default_timezone_set
无效。
有人可以解释一下吗?
答案 0 :(得分:3)
您必须使用旧版本的PHP。
date_default_timezone_set is for PHP 5.1.2 and above.
尝试php -v
并检查您的PHP版本。
答案 1 :(得分:0)
您可以使用:
putenv("TZ=Europe/Berlin"); // PHP 4
答案 2 :(得分:-1)