| Autor | Zpráva | ||
|---|---|---|---|
| ajda2 Profil |
#1 · Zasláno: 25. 12. 2013, 10:00:00
Dobrý den,
narazil jsem na podivné chování třídy DateTime. Myslím si, že takto by se chovat neměla. Může mi někdo prosím objasnit, zda se jedná o bug, nebo něco nechápu? https://gist.github.com/ajda2/8121368 <?php
$year = 2014;
$week = 1;
$timeZone = new DateTimeZone( 'Europe/Prague' );
$dateTime = new DateTime( 'now', $timeZone );
$dateTime->setISODate($year, $week);
echo 'Week: ' . $dateTime->format('W') . '<br>'; // output 1
echo 'Month: ' . $dateTime->format('m') . '<br>'; // output 12
echo 'Year: ' . $dateTime->format('Y') . '<br>'; // output 2013
?> |
||
| Medvídek Profil |
To vypadá, jako že bere week od pondělí, což je ještě prosinec 2013, protože rok 2014 začíná středou.
Pokud si vypíšu takto: echo 'Week: ' . $dateTime->format('o-W') . '<br>'; // output 2014-01 |
||
| ajda2 Profil |
#3 · Zasláno: 25. 12. 2013, 11:13:19
Medvídek:
Právě proto, že rok 2014 začíná středou, tak jsem na tento problém narazil. Děkuji za upozornění na parametr formátu 'o'. To jsem přehlídl a v dokumentaci je toto přímo uvedeno. Takže je to moje chyba. Děkuji Medvídku :) |
||
|
Časová prodleva: 12 let
|
|||
0