Ich versuche zu teilen/konvertieren zwei 24-Stunden-Zeiten zu einzelnen 12-Stunden-Zeiten, aber PHP scheint entweder 12 Minuten oder 1min auf die Ausgabe hinzufügen, und ich kann Ermitteln Sie die Ursache nicht, nachdem Sie Zeitzonen- und Systemzeitkorrekturen versucht haben. Könnten Sie mich bitte erziehen?PHP DateTime :: createFromFormat Hinzufügen von 12 Minuten, wenn das Ausgabeformat ist g: ma
Eingang:
<?php $timeSlot = ["10:00","22:00"];
echo DateTime::createFromFormat('H:i',$timeSlot[0])->format('H:i');
echo " - ";
echo DateTime::createFromFormat('H:i',$timeSlot[1])->format('H:i');
echo " Fine.<br>";
echo DateTime::createFromFormat('H:i',$timeSlot[0])->format('g:ma');
echo " - ";
echo DateTime::createFromFormat('H:i',$timeSlot[1],new DateTimeZone('Australia/Sydney'))->format('g:ma');
echo " Why 12 extra minutes?<br>";
echo DateTime::createFromFormat('!H:i',$timeSlot[0])->format('g:ma');
echo " - ";
echo DateTime::createFromFormat('!H:i',$timeSlot[1],new DateTimeZone('Australia/Sydney'))->format('g:ma');
echo " Why one extra minute?"; ?>
Ausgang:
10:00 - 22:00 Fine.
10:12am - 10:12pm Why 12 extra minutes?
10:01am - 10:01pm Why one extra minute?
Man, das eine Fangfrage war. Wolltest du uns zum Narren halten oder wer hat dir diesen Code gegeben, um dich zu täuschen? ;) –
Ja, das war eine dumme Frage, verdammte Formatcodes haben mich wieder erwischt. Es tut uns leid. –