Maison  >  Article  >  développement back-end  >  Comment convertir le total des secondes en heures, minutes et secondes en php

Comment convertir le total des secondes en heures, minutes et secondes en php

PHPz
PHPzoriginal
2023-04-18 10:19:051600parcourir

Lors du développement d'applications back-end, nous devons souvent convertir un nombre total de secondes au format heures, minutes et secondes pour mieux afficher les informations temporelles. En langage PHP, nous pouvons utiliser du code simple pour réaliser cette fonction. Cet article vous présentera comment convertir le total des secondes en PHP au format heures, minutes et secondes.

1. Comment obtenir le nombre total de secondes

En PHP, nous pouvons obtenir l'horodatage UNIX actuel via la fonction time(). Un horodatage UNIX fait référence au nombre de secondes écoulées depuis 0:00:00 le 1er janvier 1970. Nous pouvons également utiliser la fonction strtotime() pour convertir une chaîne d'heure standard en un horodatage UNIX.

Par exemple, le code suivant obtiendra l'horodatage UNIX actuel et l'imprimera :

$timestamp = time();
echo $timestamp;

Le résultat de sortie est :

1623761913

2. Convertir le total des secondes au format heures, minutes et secondes

En PHP, nous pouvons utilisez des opérations mathématiques et des opérations sur les chaînes pour convertir le total des secondes au format heures, minutes et secondes. La méthode d'implémentation spécifique est la suivante :

function secondsToTime($seconds) {
  $hours = floor($seconds / 3600);
  $minutes = floor(($seconds - ($hours * 3600)) / 60);
  $seconds = $seconds - ($hours * 3600) - ($minutes * 60);
  return str_pad($hours, 2, '0', STR_PAD_LEFT).':'.str_pad($minutes, 2, '0', STR_PAD_LEFT).':'.str_pad($seconds, 2, '0', STR_PAD_LEFT);
}

Dans le code ci-dessus, nous définissons une fonction nommée secondsToTime(), qui est utilisée pour convertir le total des secondes au format heure, minute et seconde. Le paramètre $seconds de cette fonction représente le nombre total de secondes saisies.

Tout d'abord, nous divisons le nombre total de secondes par 3600 pour obtenir le nombre d'heures. La fonction floor() en PHP peut arrondir un nombre à virgule flottante vers le bas et renvoyer un entier. Par exemple, le résultat de floor(5.5) est 5.

Ensuite, nous soustrayons le nombre de secondes en heures du nombre total de secondes pour obtenir le nombre de secondes restantes. Divisez les secondes restantes par 60 pour obtenir les minutes. De même, nous arrondissons à l’inférieur en utilisant la fonction floor().

Enfin, nous soustrayons le nombre de secondes représenté par les minutes des secondes restantes pour obtenir le nombre final de secondes.

Enfin, nous utilisons la fonction str_pad() pour remplir les heures, les minutes et les secondes en deux chiffres et les concaténer en une chaîne, exprimée au format heures, minutes et secondes.

Étant donné que différentes secondes totales peuvent être converties en différentes heures, minutes et secondes, nous devons utiliser la fonction str_pad() pour remplir afin de garantir un format uniforme des résultats de sortie.

3. Appliquer le code à un scénario réel

Maintenant, nous essayons d'appliquer le code ci-dessus à un scénario réel. Supposons que nous souhaitions convertir la durée totale de lecture d'une vidéo (en secondes) au format heures, minutes et secondes pour un affichage facile aux utilisateurs.

Voici un exemple simple :

$videoLength = 8939; // 视频总播放时长为8939秒
$playTime = secondsToTime($videoLength);
echo $playTime; // 输出结果为:02:28:59

Dans le code ci-dessus, nous définissons la durée totale de lecture de la vidéo à 8939 secondes et appelons la fonction secondsToTime() pour la convertir au format heures, minutes et secondes. Enfin, nous imprimons le format converti des heures, des minutes et des secondes et l'affichons à l'utilisateur.

4. Résumé

Grâce à l'introduction ci-dessus, nous avons appris comment convertir le total des secondes PHP au format heure, minute et seconde. Ce type de conversion de temps est très courant et utile dans les applications back-end. En utilisant cette approche, nous pouvons facilement convertir le nombre total de secondes dans un format facile à lire et l'afficher à l'utilisateur. J'espère que vous pourrez appliquer ces connaissances dans un travail réel et ajouter des fonctions plus pratiques à vos applications.

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