Falc410
Vice Admiral
- Registriert
- Juni 2006
- Beiträge
- 6.723
Ich bin kein PHP Entwickler aber muss mich gerade damit rumschlagen.
Ich habe zwei DateTime Objekte und ich möchte wissen ob diese mehr als eine Stunde auseinander liegen.
Beispiel:
2021-11-07T17:49:58+0100
2021-10-29T18:43:00+0200
Unterschied sind dann 0 Stunden obwohl sich die Teile um mehrere Tage unterscheiden. Wenn ich format('%d') mache kommt als Wert 9 raus z.B.
Ich hatte vorher die DateTime Objekte in Epoch Time umgerechnet und dann die Int Werte voneinander abgezogen aber mein Kollege hat gesagt, das wäre ein schlechter Stil, ich soll DateTime und Diff benutzen. Aber ich brauche das Diff, von mir aus in Sekunden, aber halt den Betrag und zwar vom kompletten Date und nicht nur der einzelnen Positionen (wie Jahr, Monat, Tag, Stunden, Minuten, Sekunden)...
Jemand eine Idee?
Edit: Endlich einen passenden StackOverflow gefunden (hatte ja schon gesucht bevor ich hier gepostet habe):
https://stackoverflow.com/questions/365191/how-to-get-time-difference-in-minutes-in-php
Da ist die Lösung. Ich hatt es vorher mit strtotime implementiert, was aber wohl nicht mehr genutzt werden sollte. Aber hier war die Lösung ->getTimeStamp()
Hoffe das passt. Nun kann ich
Ich habe zwei DateTime Objekte und ich möchte wissen ob diese mehr als eine Stunde auseinander liegen.
PHP:
$datetimeObjekt1->diff($datetimeObjekt2)->format('%h') > 1
Beispiel:
2021-11-07T17:49:58+0100
2021-10-29T18:43:00+0200
Unterschied sind dann 0 Stunden obwohl sich die Teile um mehrere Tage unterscheiden. Wenn ich format('%d') mache kommt als Wert 9 raus z.B.
Ich hatte vorher die DateTime Objekte in Epoch Time umgerechnet und dann die Int Werte voneinander abgezogen aber mein Kollege hat gesagt, das wäre ein schlechter Stil, ich soll DateTime und Diff benutzen. Aber ich brauche das Diff, von mir aus in Sekunden, aber halt den Betrag und zwar vom kompletten Date und nicht nur der einzelnen Positionen (wie Jahr, Monat, Tag, Stunden, Minuten, Sekunden)...
Jemand eine Idee?
Edit: Endlich einen passenden StackOverflow gefunden (hatte ja schon gesucht bevor ich hier gepostet habe):
https://stackoverflow.com/questions/365191/how-to-get-time-difference-in-minutes-in-php
Da ist die Lösung. Ich hatt es vorher mit strtotime implementiert, was aber wohl nicht mehr genutzt werden sollte. Aber hier war die Lösung ->getTimeStamp()
Hoffe das passt. Nun kann ich
PHP:
abs($dateTimeObjekt1->getTimeStamp()-$dateTimeObjekt2->getTimeStamp()) > 3600 machen
Zuletzt bearbeitet: