Maison >développement back-end >tutoriel php >Comment convertir le temps HH:MM:SS en secondes totales en PHP ?

Comment convertir le temps HH:MM:SS en secondes totales en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-08 07:14:11680parcourir

How to Convert HH:MM:SS Time to Total Seconds in PHP?

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

  1. 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);
  2. Extraire les heures, les minutes et les secondes à l'aide de sscanf :

    sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
  3. Calculer les secondes en multipliant les heures par 3600, minutes par 60, et en ajoutant le secondes.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn