Here's the problem: Let's say I have an ISO8601 standard timestamp, for argument's sake, "2003-05-31T13:30:00", and I run that timestamp through a PHP function, strtotime(). This is what happens:
1:30 PM Saturday 31 May 2003 - 2003-05-31T13:30:00
You tell me why that's not half past one.Here's the current server time:
5:59 PM Saturday 22 February 2025 - 1740247155
UPDATE: Problem solved!
Removing the "T" from the timestamp fixes the problem. I don't know why but considering the T is a required part of the ISO standard for dates and times I think PHP should be correcting their function. However it seems to work without the T :-)
Using "2003-05-31 13:30:00":
1:30 PM Saturday 31 May 2003 - 2003-05-31 13:30:00
12:00 AM Thursday 1 January 1970 -
11:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00
6:30 AM Friday 26 December 2003 - 2003-12-25 23:30:00 +7 hours
12:00 AM Thursday 1 January 1970 - 2003-12-25 23:30:00 seconds
4:30 AM Friday 26 December 2003 - 2003-12-25 23:30:00 +5 hours
6:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00 -05 hours
11:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00
11:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00
11:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00
11:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00Z
11:30 PM Thursday 25 December 2003 - 2003-12-25 23:30:00 Z
6:30 AM Friday 26 December 2003 - 1072420200
7:30 AM Friday 26 December 2003 - 1072423800
8:30 AM Friday 26 December 2003 - 1072427400
11:30 PM Thursday 25 December 2003 - 1072395000
5:29 PM Sunday 16 February 2059 - 2812642155
Feb 22 2025 17:59 UTC12:00 PM Saturday 22 February 2025 - 12:00:00Z
12:00 AM Sunday 23 February 2025 - 24:00:00Z
12:00 AM Saturday 22 February 2025 - 00:00:00Z
12:00 AM Wednesday 1 January 2003 - 2003-01-01 00:00:00Z