11. december 2005 - 11:40
Der er
6 kommentarer og 1 løsning
Find dato ud fra variabel
Hej, Jeg har dette: $hd2 = "11122005"; $uger2 = date("F", $hd2); print $uger2; Men den skriver 19 hvor det skulle være 49 Hvad gør jeg galt?
Annonceindlæg fra Pax8
11. december 2005 - 11:40
#1
shit.. Skulle ha været: $hd2 = "11122005"; $uger2 = date("W", $hd2); print $uger2;
11. december 2005 - 11:49
#2
<?php //http://exp.dk/spm/671226 $hd2 = "11122005"; if (preg_match('/(\\d{2})(\\d{2})(\\d{4})/', $hd2, $matches)) { echo date("W", mktime(0, 0, 0, $matches[2], $matches[1], $matches[3])); } else { echo "Forkert dato-format"; } ?> Her skal du dog være opmærksom på, at dit datoformat skal være: 11122005 112005 <- 1. januar 2005 vil fejle! Der skal du så bruge: 01012005
11. december 2005 - 17:49
#3
Hvor får du $hd2 fra? checkdate() er jo også brugbar ti lat tjekke om en dato er korrekt date() bruger jo timestamp, det er derfor du ikke får hvad du forventer.
11. december 2005 - 18:10
#4
jakobdo>> Så virker det;) Jeg har lavet det sådan: if (preg_match('/(\\d{2})(\\d{2})(\\d{4})/', $hd2, $matches)) { $uger2 = date("W", mktime(0, 0, 0, $matches[2], $matches[1], $matches[3])); } else { $hd2 = "0".$hd2; preg_match('/(\\d{2})(\\d{2})(\\d{4})/', $hd2, $matches); $uger2 = date("W", mktime(0, 0, 0, $matches[2], $matches[1], $matches[3])); } Mange tak for hjælpen. Smider du et svar!
11. december 2005 - 18:47
#5
Svar!
11. december 2005 - 19:43
#6
Tak, ha' en god aften..
11. december 2005 - 19:44
#7
Takker for point, og i lige måde!
Vi tilbyder markedets bedste kurser inden for webudvikling