Het lijkt erop dat u zich in de VS bevindt, in een tijdzone waar zomertijd net is begonnen .
Daarom bestaat 2am niet vandaag.
DATETIME
in MySQL gebruikt een lokale tijd (de tijdzone kan op verschillende manieren worden ingesteld) en in jouw geval is het waarschijnlijk je lokale tijd, daarom loop je tegen dit probleem aan. Als je eigenlijk UTC bedoelde , moet u eerst de tijdzone instellen op UTC met SET time_zone = "+00:00"
of door de juiste algemene configuratie
in te stellen .
Aangezien je PHP-bibliotheek deze (ongeldige) tijd genereert, neem ik aan dat je een mismatch hebt tussen de tijdzones die worden gebruikt door PHP en door MySQL.