Ok, eine wirklich einfache Frage, aber ich bin zu dick, um es herauszufinden. Ich möchte zweimal unterscheiden. Zum Beispiel "1:07" (1 Minute und 7 Sekunden) und "3:01" (3 Minuten und 1 Sekunde). Es wird nur Minuten und Sekunden dauern. Ich habe versucht, dies zu nutzen:
%Vor%Aber ich glaube ich laufe in die falsche Richtung?
Danke für jede Hilfe.
Ich habe es versucht: echo timeDiff ('1:07', '2:30');
Ich habe diesen Ausgang "4980"
bekommenWas ist das Obige? Sind es Sekunden? Ich habe keine Ahnung, wie man es als "1:23" bekommt, was der Unterschied ist.
Ich danke euch allen, ich habe so viel gelernt von diesem einen Thread, esp. Pauls. Es funktioniert sehr gut und ich mag die Abwehrhaltung!
Sie können strtotime nicht verwenden, da es MM: SS als HH: MM interpretiert - deshalb erhalten Sie höhere Werte als erwartet.
Sie könnten einfach Ihre MM: SS-Werte mit '00: 'voranstellen, damit sie wie HH: MM: SS aussehen.
Beachten Sie jedoch, dass strtotime, wenn nur HH: MM: SS angegeben wird, einen Zeitstempel für today liefert, was für Wegwerfcode gut ist. Verwenden Sie diese Technik nicht für etwas Wichtiges, bedenken Sie, was passiert, wenn Ihre beiden Aufrufe von strttotime Mitternacht überschreiten!
Alternativ wird ein MM: SS-Wert in einen Zeitstempel umgewandelt, den Sie mit
rechnen können %Vor%Es ist ein bisschen defensiver als die Verwendung von explodieren, aber zeigt einen anderen Ansatz!
Verwenden Sie den Code hier , um die Sekunden selbst zu berechnen:
> %Vor%gibt 0:01:54
zurückDie Funktion strtotime konvertiert Daten (bis auf die Sekunde) in einem String Format in ein Unix Timestamp Format. Es ist NICHT für die Umwandlung von Zeichenfolgen in einem Zeitformat in nichts. Sehen Sie, ob diese beiden Anweisungen Ihnen helfen, ein beliebiges
zu unterdrücken %Vor%Es klingt so, als wolltest du so etwas
%Vor%Tags und Links php