Conversion de l'heure au format HH:MM:SS en secondes
La conversion de l'heure au format HH:MM:SS en un nombre de secondes plat est une tâche courante en programmation. Ceci peut être réalisé à l'aide d'une procédure simple.
Solution :
Il existe deux approches pour cette conversion :
Approche 1 : Utiliser Expressions régulières
Ajoutez des zéros non significatifs au format MM:SS s'il existe. Cela peut être fait à l'aide d'expressions régulières :
$str_time = preg_replace("/^([\d]{1,2})\:([\d]{2})$/", "00::", $str_time);
Extraire les heures, les minutes et les secondes à l'aide de sscanf :
sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
Approche 2 : sans expressions régulières
Pour l'heure au format MM:SS, utilisez ce qui suit :
sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds); $time_seconds = isset($seconds) ? $hours * 3600 + $minutes * 60 + $seconds : $hours * 60 + $minutes;
Pour l'heure au format HH:MM:SS, extrayez directement les heures, les minutes et les secondes à l'aide de sscanf :
sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds); $time_seconds = $hours * 3600 + $minutes * 60 + $seconds;
Exemple d'utilisation :
$str_time = "23:12:95"; $time_seconds = $hours * 3600 + $minutes * 60 + $seconds; echo $time_seconds; // Output: 83575
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!