Frage

Gibt es eine native Möglichkeit "HH:MM:SS" to seconds mit PHP 5.3 zu tun, anstatt zu tun einer Spaltung auf dem Doppelpunkt und multipling aus jedem Abschnitt die entsprechende Anzahl die Sekunden zu berechnen?


Zum Beispiel in Python können Sie tun:

string time = "00:01:05";
double seconds = TimeSpan.Parse(time).TotalSeconds;

War es hilfreich?

Lösung

Der schnelle Weg:

echo strtotime('01:00:00') - strtotime('TODAY'); // 3600

Andere Tipps

Das sollte es tun:

list($hours,$mins,$secs) = explode(':',$time);
$seconds = mktime($hours,$mins,$secs) - mktime(0,0,0);

Ich denke, die einfachste Methode zu verwenden strtotime() Funktion wäre:

$time = '21:30:10';
$seconds = strtotime("1970-01-01 $time UTC");
echo $seconds;

Demo


date_parse() kann auch für das Parsen von Datum und Zeit verwendet werden:

$time = '21:30:10';
$parsed = date_parse($time);
$seconds = $parsed['hour'] * 3600 + $parsed['minute'] * 60 + $parsed['second'];

Demo

Leider nicht -. Als PHP nicht stark ist getippt es gibt kein Konzept einer Zeitart und daher keine Mittel zwischen einer solchen Schnur und einem „Sekunden“ Wert

konvertieren

Als solche in der Praxis die Menschen oft die Zeichenfolge aufgeteilt und multiplizieren jedem Abschnitt, wie Sie erwähnt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top