Nobse Geschrieben 11. März 2003 Geschrieben 11. März 2003 Hallo, ich möchte die Zeit von dem aktuellen Datum mit einem Datum aus der Datenbank Vergleichen das er mir dann ausgibt wieviel Tage, Stunden, Minuten und Sekunden seit dem Vergangen sind. Die Zeiten sind im Unix Time Stamp Format in der Datenbank gespeicher. Ich habe schon etwas programmiert, aber das Ergebniss stimmt nicht wirklich. Vielleicht hat jemand ja schon solch eine Funktion geschrieben, oder php selber hat diese Funktion.
robotto7831a Geschrieben 11. März 2003 Geschrieben 11. März 2003 Hallo, das kleine Skript sollte Dir weiterhelfen. echo bearbeitungszeit_berechnen('2002-06-01','2002-06-05','07:30:00','06:35:00'); function bearbeitungszeit_berechnen ($datum_beginn,$datum_ende,$uhrzeit_beginn,$uhrzeit_ende) { $zeitraum = ""; $Endejahr = substr($datum_beginn,0,4); $Endemonat = substr($datum_beginn,5,2); $Endetag = substr($datum_beginn,8,2); $Endestunde = substr($uhrzeit_beginn,0,2); $Endeminute = substr($uhrzeit_beginn,3,2); $Endesekunde = substr($uhrzeit_beginn,6,2); $Anfangjahr = substr($datum_ende,0,4); $Anfangmonat = substr($datum_ende,5,2); $Anfangtag = substr($datum_ende,8,2); $Anfangstunde = substr($uhrzeit_ende,0,2); $Anfangminute = substr($uhrzeit_ende,3,2); $Anfangsekunde = substr($uhrzeit_ende,6,2); $Anfang = gmmktime($Anfangstunde,$Anfangminute,$Anfangsekunde,$Anfangmonat,$Anfangtag,$Anfangjahr); $Ende = gmmktime($Endestunde,$Endeminute,$Endesekunde,$Endemonat,$Endetag,$Endejahr); $Ergebnis = $Anfang - $Ende; echo "Timestamp: $Ergebnis<br>"; echo "<br>"; echo date ("M d Y H:i:s", $Ergebnis); $tag = date ("d", $Ergebnis) -1; $monat = date("m", $Ergebnis) -1; $stunden = date ("H", $Ergebnis) -1; $minuten = date ("i", $Ergebnis); $sekunden = date ("s", $Ergebnis); echo "<br>Tage: $tag<br>Monate: $monat<br>Stunden: $stunden<br>Minuten: $minuten<br>Sekunden: $sekunden"; return $zeitraum; } [/php] Frank
Nobse Geschrieben 11. März 2003 Autor Geschrieben 11. März 2003 Hoi, DANKE erstmal Aber wenn ich dein Script anpasse kommenimmer negative und falsche Zahlen raus. (Zumal ich mir sicher bin es falsch eingebunden zu haben) Mein erster Versuch sah so aus: $time2 = $sql ['time']; $jetzt = time(); $dif = $jetzt-$time2; $tag = $dif/86400; $tag = floor($tag); $tag = $tag*86400; $deltag = $tag*86400; $dif = $dif-$deltag; $stunden = $dif/3600; $stunden = floor($stunden); $delstunden = $stunden; $stunden = $stunden*3600; $dif = $dif-$stunden; $minuten = $dif/60; $minuten = floor($minuten); $delminuten = $minuten; $minuten = $minuten*60; $dif = $dif-$minuten; $delsekunden = $dif; [/PHP] Da bekomme ich das gleiche Problem er haut mir 12 stellige Tage hin auch wenn es gerade mal einer ist, aber wenn ich das habe klappt es mit den Sekunden nicht usw. usw.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden