xibriz Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 Jeg bruker følgende funksjon for å finne neste måned: mktime(0, 0, 0, date("m")+1, date("d"), date("Y")); Men i dag oppdaget jeg at neste måned ble "03", altså mars. Det er greit at i dag er det 29. januar, og at dette ikke er ett skuddår så 29. februar finnes ikke, men blir dette rett? Eller er det jeg som bruker funksjonen feil/burde brukt noe annet for å finne neste måned? Syntes dette var litt merkverdig. Lenke til kommentar
MikkelRev Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 http://no.php.net/strtotime Lenke til kommentar
MikkelRev Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 (endret) Og btw, istedetfor å lage ny tråd: Jeg vil ha neste mandag og onsdag, inklusiv denne dagen. Har denne koden: min(strtotime("next Monday"),strtotime("next Wednesday")) Problemet er at hvis den kjøres på en mandag, så sier den at neste gang er på onsdag. Jeg vil at den skal være inklusiv, så at neste mandag eller onsdag er idag (om det er mandag idag). Og tilsvarende for onsdag. Endret 29. januar 2010 av MikkelRev Lenke til kommentar
Jonas Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 http://no.php.net/strtotime Lenke til kommentar
Crowly Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 (endret) Jeg bruker følgende funksjon for å finne neste måned: mktime(0, 0, 0, date("m")+1, date("d"), date("Y")); Men i dag oppdaget jeg at neste måned ble "03", altså mars. Det er greit at i dag er det 29. januar, og at dette ikke er ett skuddår så 29. februar finnes ikke, men blir dette rett? Eller er det jeg som bruker funksjonen feil/burde brukt noe annet for å finne neste måned? Syntes dette var litt merkverdig. Det er rett, f. eks vil date('d.m.Y',mktime(0,0,0,1,35,2010)) returnere 04.02.2010 Litt på siden så har jeg oppdaget at mktime kan ha litt problemer med antall timer når vi stiller klokka, da er gmmktime er greit å bruke i stedet for, da gmt ikke oppererer med sommer og vinters tid (så vidt jeg vet). Edit: Mulig det kan være noe med tidssone innstillinger å gjøre, har ikke brukt så mye tid på det. Endret 29. januar 2010 av Crowly Lenke til kommentar
xibriz Skrevet 29. januar 2010 Forfatter Del Skrevet 29. januar 2010 (endret) Men folkens echo date("d-m-Y", mktime(0, 0, 0, date("m")+1, date("d"), date("Y"))); echo "<br/>"; echo date("d-m-Y", strtotime("+1 month")); Gir 01-03-2010 01-03-2010 Det blir jo ikke lettere å finne neste mnd. med strtotime... EDIT: Løsningen ble å ta utgangspunkt i den 1. i måneden vi er i, og så plusse på en mnd. echo date('d-m-Y', strtotime('+1 month', strtotime(date("Y")."-".date("m")."-01"))); Endret 29. januar 2010 av xibriz Lenke til kommentar
MikkelRev Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 Og btw, istedetfor å lage ny tråd: Jeg vil ha neste mandag og onsdag, inklusiv denne dagen. Har denne koden: min(strtotime("next Monday"),strtotime("next Wednesday")) Problemet er at hvis den kjøres på en mandag, så sier den at neste gang er på onsdag. Jeg vil at den skal være inklusiv, så at neste mandag eller onsdag er idag (om det er mandag idag). Og tilsvarende for onsdag. Ingen forslag? Lenke til kommentar
Noble Skrevet 29. januar 2010 Del Skrevet 29. januar 2010 $days_in_month = cal_days_in_month ( int $calendar , int $month , int $year ); $next_month = $days_in_month * 86400; Lenke til kommentar
xibriz Skrevet 29. januar 2010 Forfatter Del Skrevet 29. januar 2010 $days_in_month = cal_days_in_month ( int $calendar , int $month , int $year );$next_month = $days_in_month * 86400; Hvordan skal det hjelpe å gange antall dager i en gitt måned med antall sekunder i en dag? Lenke til kommentar
xibriz Skrevet 29. januar 2010 Forfatter Del Skrevet 29. januar 2010 (endret) Og btw, istedetfor å lage ny tråd: Jeg vil ha neste mandag og onsdag, inklusiv denne dagen. Har denne koden: min(strtotime("next Monday"),strtotime("next Wednesday")) Problemet er at hvis den kjøres på en mandag, så sier den at neste gang er på onsdag. Jeg vil at den skal være inklusiv, så at neste mandag eller onsdag er idag (om det er mandag idag). Og tilsvarende for onsdag. Ingen forslag? Du kan beholde koden din, å i tillegg kjøre en if if (date("N") == 1 || date("N") == 3) echo "i dag" else echo /* kode for antall dager til neste mandag eller onsdag */ Endret 29. januar 2010 av xibriz Lenke til kommentar
Noble Skrevet 1. februar 2010 Del Skrevet 1. februar 2010 $days_in_month = cal_days_in_month ( int $calendar , int $month , int $year );$next_month = $days_in_month * 86400; Hvordan skal det hjelpe å gange antall dager i en gitt måned med antall sekunder i en dag? Da kan du plusse på antall sekunder i måneden for å finne neste måned? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå