At last weekend we had end of DST and clocks were turned backward 1 hour. I've found a strange behaviour of DateTime::diff() when compared date are in different times: spring time and winter time.
new DateTime('2015-10-28 12:50:00')->diff(new DateTime('2015-10-19 13:20:00'))
result = {DateInterval} [15]
y = 0
m = 0
d = 9
h = -1 # negative hour!
i = 30
s = 0
when the difference is more than one hour everythin is ok:
new DateTime('2015-10-28 12:50:00')->diff(new DateTime('2015-10-19 14:20:00'))
result = {DateInterval} [15]
y = 0
m = 0
d = 8
h = 22
i = 30
s = 0
Any ideas how to fix this? Is this a bug in PHP?