webForumDet fria alternativet

date() och strtotime() ger fel resultat?

PHP

1 svar · 394 visningar · startad av learn

Medlem sedan jan. 20051 130 inlägg
Frågan#1

Följande blir 12 (december)

date('m', strtotime('+1 months'))

bra, följande blir 1 (januari)

date('m', strtotime('+2 months'))

bra, men följande blir 3 (mars)

date('m', strtotime('+3 months'))

inte bra!

:q

Varför blir det fel, kan någon förklara vad jag gör för fel..??

/R Jag kom på varför jag får det resultatet, eftersom februari 2007 endast har 28 dagar... Men jag vill ju, i detta fall, helt enkelt bara veta vilken månad det är efter november, december, januari osv.

Hur ska jag göra?

Medlem sedan aug. 2001145 inlägg
#2

Ett alternativ:

$n = mktime(0, 0, 0, date("m")+3, 1);
echo date('d/m', $n);

259 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)