28. januar 2008 - 17:44
Der er
20 kommentarer og 3 løsninger
Ugekalender, der viser datoer
Hejsa, Jeg skal lave et skema der viser om vores sommerhus er lejet ud, og hvad det koster i de forskellige uger... Hvilken php-kommando kan jeg bruge til at finde ud af hvilke dato en uge starter/slutter, hvor variablen "uge" og "år" er givet?
Annonceindlæg fra Novataris
28. januar 2008 - 21:53
#1
Du kan kigge på mktime() og date('w') Men jeg mener tidligere at have set et lignende emne, hvor det ikke var en god og holdbar løsning det endte med.
29. januar 2008 - 14:39
#2
Hvordan helt præcist skal de kædes sammen?
29. januar 2008 - 14:46
#3
function week2date($year, $week, $day = 0) { // use "strtotime('2007W011')" for Monday "1", of Week 1 ("01") of year 2007 ("2007") $string = $year . 'W' . sprintf("%02d", $week) . $day; $dates[0] = strtotime($string); $string = $year . 'W' . sprintf("%02d", $week) . 7; $dates[1] = strtotime($string); return $dates ; } den funktion har jeg brugt. den retunerer et array med start datoen og slut datoen på ugen. Jeg har ikke behov for at give day paramenteren et 1 tal for at få mandag, ved ikke om det har noget med min php opsætning.
05. februar 2008 - 14:38
#4
Kunne du bruge det?
08. februar 2008 - 01:17
#5
Jeg prøvede, men resultatet bliver underligt... Jeg har taget det ud af funktionen, for blot at se om jeg laver en dum fejl, men kan ikke finde den... $year = 2008; $week = 6; $day = 0; $string = $year . 'W' . sprintf("%02d", $week) . $day; $dates = strtotime($string); echo"$dates"; ...og så outputter den bare "-1"
08. februar 2008 - 08:40
#6
hvad sker der hvis du laver en $dates = week2date(2008,6); og så laver en: echo(date("d-m-Y, $dates[0]). "<br>); echo(date("d-m-Y, $dates[1]). "<br>);
08. februar 2008 - 17:44
#7
xited: Har lige testet sajbar's kode her: <?php //http://www.eksperten.dk/spm/816918 function week2date($year, $week, $day = 0){ // use "strtotime('2007W011')" for Monday "1", of Week 1 ("01") of year 2007 ("2007") $string = $year . 'W' . sprintf("%02d", $week) . $day; $dates[0] = strtotime($string); $string = $year . 'W' . sprintf("%02d", $week) . 7; $dates[1] = strtotime($string); return $dates ; } $dates = week2date(2008,5); echo date('d-m-Y',$dates[0]).'<br />'; echo date('d-m-Y',$dates[1]).'<br />'; ?> Og den virker fint nok.
08. februar 2008 - 23:04
#8
jakobdo> Et copy-paste af din post giver dette output: 01-01-1970 01-01-1970
09. februar 2008 - 07:30
#9
10. februar 2008 - 14:03
#10
17. februar 2008 - 22:21
#11
Well, jeg kommer vist ingen vejne... Point?
18. februar 2008 - 08:02
#12
Svar
18. februar 2008 - 08:10
#13
svar
18. februar 2008 - 08:31
#14
sajbar: Og så også en kommentar! :o)
18. februar 2008 - 08:46
#15
det er stadigvæk tidligt;) Jeg har ikke fået min kaffe endnu
18. februar 2008 - 19:54
#16
Tak for forslagene... Men har i et bud på hvor fejlen monstro ligger?
18. februar 2008 - 20:39
#17
Måske du skal declare dit array først, $dates = array(); før værdier tilføjes array'et
18. februar 2008 - 21:32
#18
Takker for point.
19. februar 2008 - 07:57
#19
takker for point
19. februar 2008 - 15:06
#21
Jeg tror måske det kan være denne som fejler: strtotime($string);
19. februar 2008 - 15:11
#22
jeg er enig, prøv at lave en var_dump($string) og derefter en var_dump($strototime($string));
19. februar 2008 - 15:13
#23
Vi tilbyder markedets bedste kurser inden for webudvikling