Comment faire pour convertir un nombre décimal en temps, par exemple. HH:MM:SS
Je suis en train de prendre une virgule et de le convertir pour que je puisse l'écho, comme les heures, les minutes et les secondes.
J'ai les heures et les minutes, mais je suis en rupture de mon cerveau en essayant de trouver les secondes. Cherché sur google pour un certain temps avec pas de chance. Je suis sûr que c'est assez simple, mais rien, j'ai essayé a travaillé. Tout avis est apprécié!
Voici ce que j'ai:
function convertTime($dec)
{
$hour = floor($dec);
$min = round(60*($dec - $hour));
}
Comme je l'ai dit, j'ai l'heure et des minutes sans problème. Juste du mal à obtenir des secondes pour une raison quelconque.
Merci!
Dans ce format, c'est que "virgule"?
ce que vous avez ne semble pas juste. Pouvez-vous fournir un échantillon d'entrée et de sortie attendue ?
La virgule n'est rien de spécial. Quelque chose comme 5.67891234.
double possible de Comment Convertir le nombre décimal à l'heure ou vice versa
Aussi, la sortie est prévue pour être juste un numéro pour l'heure, un certain nombre de min, et un certain nombre de sec que je peux utiliser pour imprimer une page HTML.
ce que vous avez ne semble pas juste. Pouvez-vous fournir un échantillon d'entrée et de sortie attendue ?
La virgule n'est rien de spécial. Quelque chose comme 5.67891234.
double possible de Comment Convertir le nombre décimal à l'heure ou vice versa
Aussi, la sortie est prévue pour être juste un numéro pour l'heure, un certain nombre de min, et un certain nombre de sec que je peux utiliser pour imprimer une page HTML.
OriginalL'auteur HMFlol | 2012-02-01
Vous devez vous connecter pour publier un commentaire.
Si
$dec
en heures ($dec
puisque le demandeur a expressément mentionné un décimal):Ravi de vous aider.
Au lieu de créer de la
lz
fonction, vous pouvez utiliser le natifstr_pad
fonction, à partir de PHP:str_pad($num, 2, 0, STR_PAD_LEFT)
Très vrai, j'ai juste arrivé à déchirer ce à partir de vieux, vieille classe de la mienne.
En fait, depuis que le demandeur a expressément demandé au sujet d'un décimal, j'ai enlevé le
(int)
exprimés. N'a pas beaucoup de sens pour tronquer les heures variable et pourtant toujours la minute et la seconde de calculs (car si vous la ronde des heures variables, il n'y aura pas toutes les minutes ou les secondes!)OriginalL'auteur Crontab
Solution très simple en une seule ligne:
Ne pense pas à ce sujet 🙂 Merci.
Importe-t-il si vous utilisez
date()
au lieu degmdate()
?décimale de l'heure, horodatage, comme je le pense, défini dans le fuseau horaire UTC. Sinon, il sera déplacé vers le fuseau horaire du serveur et vous pouvez ne jamais obtenir, par exemple, 0 et ainsi de suite.
OriginalL'auteur Cheery
Tout upvoted n'a pas fonctionné dans mon cas.
J'ai utilisé cette solution pour convertir en décimal les heures et les minutes à l'heure normale le format.
c'est à dire
OriginalL'auteur Patrick Jaja
Je ne suis pas sûr si c'est la meilleure façon de le faire, mais
OriginalL'auteur Justin Pihony
C'est un excellent moyen et évite les problèmes de précision en virgule flottante:
OriginalL'auteur Teldan