4

timeformat

time_format
SYNOPSIS

time_format($n, $d=false)

DESCRIPTION

time_format retourne la représentation sous forme de chaîne de caractères du nombre de secondes $n dans un format compact.

Si $n est inférieur à 60, $n est retourné en secondes.

Si $n est supérieur ou égal à 60 et inférieur à 3600, $n est retourné en minutes et secondes.

Si $n est supérieur ou égal à 3600 et inférieur à un jour, $n est retourné en heures, minutes et secondes.

Si $n est supérieur ou égal à un jour, si $d vaut false, $n est retourné en heures, minutes et secondes, sinon en jours, heures, minutes et secondes en utilisant $d comme suffixe du nombre de jours.

Si $n est négatif, time_format retourne 0.

EXEMPLE

Pour formater un nombre de secondes :

php > require 'library/timeformat.php';
php > echo time_format(12);
12s
php > echo time_format(123);
2m03s
php > echo time_format(12345);
3h25m45s
php > echo time_format(123456);
34h17m36s
php > echo time_format(123456, 'j');
1j10h17m36s
CODE
  1. function time_format($n, $d=false) {
  2.     if ($n < 0) {
  3.         return 0;
  4.     }
  5.  
  6.     if ($n < 60) {
  7.         return sprintf('%ds', $n);
  8.     }
  9.  
  10.     if ($n < 3600) {
  11.         return sprintf('%dm%02ds', intdiv($n, 60), $n % 60);
  12.     }
  13.  
  14.     if ($n < 24*3600 or $d === false) {
  15.         return sprintf('%dh%02dm%02ds', intdiv($n, 3600), intdiv($n, 60) % 60, $n % 60);
  16.     }
  17.  
  18.     return sprintf('%d%s%02dh%02dm%02ds', intdiv($n, 24*3600), $d, intdiv($n, 3600) % 24, intdiv($n, 60) % 60, $n % 60);
  19. }
VOIR AUSSI

countformat

Commentaires

Votre commentaire :
[p] [b] [i] [u] [s] [quote] [pre] [br] [code] [url] [email] strip aide 2000

Entrez un maximum de 2000 caractères.
Améliorez la présentation de votre texte avec les balises de formatage suivantes :
[p]paragraphe[/p], [b]gras[/b], [i]italique[/i], [u]souligné[/u], [s]barré[/s], [quote]citation[/quote], [pre]tel quel[/pre], [br]à la ligne,
[url]http://www.izend.org[/url], [url=http://www.izend.org]site[/url], [email]izend@izend.org[/email], [email=izend@izend.org]izend[/email],
[code]commande[/code], [code=langage]code source en c, java, php, html, javascript, xml, css, sql, bash, dos, make, etc.[/code].