Avatar billede angelenglen Nybegynder
27. februar 2003 - 16:52 Der er 6 kommentarer og
1 løsning

ændre værdi af klokkeslæt i database (skift tidszone)

jeg har et felt i min database der fx indeholder:
17:30
15:45
12:00
etc

-det er klokkeslet i CET-tidszonen.

de ligger i et varchar feldt.

for at vise dem bruger jeg følgende linie:
<?=$list->tid ?>
(i en while-løkke naturligvis)

Jeg har brug for en måde hvordan jeg kan trække et par timer fra eller lægge til - således at jeg kan vise det pågældende klokkeslæt i flere forskellige tidszoner.
Avatar billede alrua Nybegynder
27. februar 2003 - 17:55 #1
det her burde gøre det

<?php

preg_match("/([0-9]{2}):([0-9]{2})/i", $list->tid, $tiden);
$time = intval($tiden[1]);
$time += 1; //her kan du vælge hvad du vil gøre med det (lægge en time til i det her tilfælde)
if($time > 23)
  $time = 0;
if(strlen($time) < 2)
  $time = "0".$time;
echo $time . ':' . $tiden[2];

?>
Avatar billede alrua Nybegynder
27. februar 2003 - 17:56 #2
og med det her slipper du for preg_match (hurtigere...)

<?php

$tiden = explode(':', $list->tid);
$time = intval($tiden[0]);
$time += 1; //her kan du vælge hvad du vil gøre med det (lægge en time til i det her tilfælde)
if($time > 23)
  $time = 0;
if(strlen($time) < 2)
  $time = "0".$time;
echo $time . ':' . $tiden[1];

?>
Avatar billede angelenglen Nybegynder
27. februar 2003 - 18:30 #3
tester det nu :) vender tilbage med evnt points :)
Avatar billede angelenglen Nybegynder
27. februar 2003 - 19:41 #4
hmm jeg har et problem med at hvis fx klokken er 20.30, og jeg lægger 8 timer til, bliver klokken 00.30, og det er jo forkert?
Avatar billede alrua Nybegynder
27. februar 2003 - 19:44 #5
hmm...ret det her:

if($time > 23)
  $time = 0;


til det her:

if($time > 23)
  $time = $time - 23;
Avatar billede angelenglen Nybegynder
27. februar 2003 - 19:53 #6
hvis jeg erstatter

if($time > 23)
  $time = $time - 23;

med

if($time > 23)
  $time = $time - 24;

virker det :)

mange tak!
Avatar billede alrua Nybegynder
27. februar 2003 - 20:00 #7
nåja, det skal jo nok være minus 24...selv tak da :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester