brainsucker
Erfahrenes Mitglied
Hi,
ich habe mir eine kleine Funktion gebastelt die Sekunden in Minuten und Stunden umrechnen und ausgeben soll. Wichtig dabei ist, dass wenn eine Minute angebrochen wird (d.h. die verbleibenden Sekunden > 0 sind) diese als volle Minute gezählt werden soll.
Ich denke ich habe eine Lösung gefunden, bin mir jedoch nicht sicher ob diese korrekt und gegen alle Eventualitäten gewappnet ist. Daher würde ich euch die Funktion gerne hier zeigen und bitten mal drüber zu schauen. Falls jemanden etwas auffällt oder einen Fehler entdeckt, bitte posten.
Falls alles ok sein sollte, würde ich die Funktion auch in den Code Schnipsel Bereich zur Verfügung stellen...
Hier nun die Funktion:
ich habe mir eine kleine Funktion gebastelt die Sekunden in Minuten und Stunden umrechnen und ausgeben soll. Wichtig dabei ist, dass wenn eine Minute angebrochen wird (d.h. die verbleibenden Sekunden > 0 sind) diese als volle Minute gezählt werden soll.
Ich denke ich habe eine Lösung gefunden, bin mir jedoch nicht sicher ob diese korrekt und gegen alle Eventualitäten gewappnet ist. Daher würde ich euch die Funktion gerne hier zeigen und bitten mal drüber zu schauen. Falls jemanden etwas auffällt oder einen Fehler entdeckt, bitte posten.
Falls alles ok sein sollte, würde ich die Funktion auch in den Code Schnipsel Bereich zur Verfügung stellen...
Hier nun die Funktion:
PHP:
// start und ende sind Timestamps aus der Datenbank
$start = 1216541758;
$ende = 1216570520;
// Berechne die Zeitspanne zwischen start und ende in sekunden...
$differenz = $ende-$start;
function secToAll($sekunden) // der Funktion wird die Zeit in Sekunden übergeben
{
// Berechne wieviele volle stunden sich aus den übergebenen Sekunden ergeben
$stunden_grob = $sekunden / 3600;
$stunden_extract = explode('.',$stunden_grob); // Hier werden nun die vollen Stunden extrahiert
$stunden = $stunden_extract[0]; // Hier stehen nun die vollen Stunden
$restliche_minuten = $sekunden%3600; // Ermittle nun die verbleibenden Minuten
$minuten_grob = $restliche_minuten /60;
$minuten_extract = explode('.',$minuten_grob); // Hier werdenn un die vollen Minuten extrahiert
$minuten = $minuten_extract[0]; // Hier stehen nun die vollen Minuten
$restliche_sekunden = $restliche_minuten % 60; // Berechne die verbleibenden Sekunden
if($restliche_sekunden>0) // Wenn eine neue Minute angebrochen wurde soll diese als Ganze zählen
{
$minuten++; // Anzahl Minuten wird erhöht
if($minuten == 60) {$minuten = 0; $stunden++;} // Prüfe nun ob die Anzahl der Minuten = 60 ist (Dies wäre eine volle Stunde) Daher wird Minuten auf 0 gesetzt und Stunden um 1 erhöht
}
echo "Stunden: " . $stunden . " Minuten: " . $minuten;
}
secToAll($differenz); // Aufruf der Funktion