谁能解释为什么PHP根据给定的时区来不同地计算两个日期之间的差异?
$A = new DateTime('2000-02-01 00:00:00', new \DateTimeZone('Europe/London'));
$B = new DateTime('2000-03-01 00:00:00', new \DateTimeZone('Europe/London'));
$ABdiff = $A->diff($B);
var_dump($ABdiff->m); // int(1)
// versus
$X = new DateTime('2000-02-01 00:00:00', new \DateTimeZone('Europe/Berlin'));
$Y = new DateTime('2000-03-01 00:00:00', new \DateTimeZone('Europe/Berlin'));
$XYdiff = $X->diff($Y);
var_dump($XYdiff->m); // int(0)
我不太明白为什么时区会影响此处的计算。