我正在尝试使用我的默认时区*(America/Sao_Paulo)*制作自己的php mktime();
。 它工作正常,但我注意到一些时间戳比它应该多一个小时。 所以我追查下来,找出脚本开始错过的日期:03/November/1985 我跑了一些测试和一些奇怪的原因(这就是我想了解的),这一天只有23小时! 请检查:为什么PHP时间戳的行为如此? 03/November/1985
<?php
date_default_timezone_set('America/Sao_Paulo');
//shows 23
echo (mktime(0,0,0,11,03,1985)- mktime(0,0,0,11,02,1985))/3600;
//any other date, shows 24
echo '<br/>'.(mktime(0,0,0,11,3,2000)-mktime(0,0,0,11,2,2000))/3600;
?>
请注意,它不会与时区UTC发生。 这是一个可能的错误? PS:对不起英文错误。
谢谢!我喜欢这个链接。 – Ravan