/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Udregne tid der er gået
Fra : Frank Nørvig


Dato : 02-02-05 18:47

Hejsa,

Hvis jeg har to tider, f.eks:
2005-02-02 17:56:00
2005-02-02 18:00:37

Hvordan kan jeg så smartest regne ud hvor lang tid der er mellem de to
tidspunkter?

Jeg har forsøgt følgende:
1. Lave tid+dato for begge om til unix timestamp
2. Lav $forbrug_unix = $tid1_unix - $tid2_unix
3. Lav date("H:m:s",$forbrug_unix)

Problemet er, at den så svarer 01:04:37, selvom der kun er gået de 4
minutter og 37 sekunder.

Hvad skal jeg gøre i stedet?

Mvh Frank

 
 
Frank Nørvig (02-02-2005)
Kommentar
Fra : Frank Nørvig


Dato : 02-02-05 18:56

Bør måske lige tilføje at tiderne får jeg fra et DATETIME felt i en
MySQL database.

Mvh Frank

Frank Nørvig wrote:
> Hvordan kan jeg så smartest regne ud hvor lang tid der er mellem de to
> tidspunkter?

Peter Brodersen (02-02-2005)
Kommentar
Fra : Peter Brodersen


Dato : 02-02-05 19:35

On Wed, 02 Feb 2005 18:46:34 +0100, Frank Nørvig <frank@noervig.dk>
wrote:

>1. Lave tid+dato for begge om til unix timestamp
>2. Lav $forbrug_unix = $tid1_unix - $tid2_unix
>3. Lav date("H:m:s",$forbrug_unix)

Kort løsning:
Hvis du bare hurtigt vil komme videre, og du ved, at du i øvrigt
aldrig kommer over 24 timer, så brug gmdate() i stedet for date().

Længere løsning:
Undlad punkt 3. Du står med en difference, som du ikke er interesseret
i at presse tilbage i en tidsmodel med tidszoner, sommertid, etc. Den
vil også give uventede svar, hvis der fx er over 24 timer

Jeg ville blot manuelt dividere sekunder op i minutter, timer, dage,
måneder, etc. Fordelen er også her, at man selv kan bestemme
tidsenhederne (fx hvis man synes, det giver god mening at nævne
antallet af uger i stedet for, eller nævne antal, der ellers
overskrider en grænse - 40 timer eller 80 minutter eller 110 sekunder
eller lignende).

--
- Peter Brodersen

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste