2 egyenlő egész, miért nem egyenlő?
Van egy roppant egyszerű metódusom, ami paraméterben kap egy dátumot, és megmondja, hogy a dátum ezen a héten, vagy a következő héten van-e, ha egyik sem akkor exception-t dob.
Na de a hétfői napokon, mindig exception-t dob, hogy se nem ez a hét, se nem a következő. Pedig ha kiíratom a 2 változó értékét, amit vizsgálok, azok egyenlőek (egész típusú mind a kettő), de komparálásnál már nem egyenlőek.
Ennek vajon mi lehet az oka? Még nem találkoztam ilyesmivel... :/
■ Na de a hétfői napokon, mindig exception-t dob, hogy se nem ez a hét, se nem a következő. Pedig ha kiíratom a 2 változó értékét, amit vizsgálok, azok egyenlőek (egész típusú mind a kettő), de komparálásnál már nem egyenlőek.
Ennek vajon mi lehet az oka? Még nem találkoztam ilyesmivel... :/
/**
* Dátum stringből visszaadja, hogy ez a hét, vagy a következő
*
* @param string $date YYYY-MM-DD
*
* @return int {@see JoinForm::WEEK_THIS | JoinForm::WEEK_NEXT}
*/
private function getWeekFromDate($date)
{
$explodedDate = explode('-', $date);
if (count($explodedDate) !== 3)
throw new CException('Csak YYYY-MM-DD formátumú dátum a megengedett!');
$utcTimestamp = strtotime($date.' 00:00:00 UTC');
$paramWeek = intval(gmdate('W', $utcTimestamp));
$localWeek = intval(gmdate('W'));
var_dump($paramWeek, $localWeek); // int 30, int 30
if ($paramWeek == $localWeek) // itt szerinte nem egyenlőek
return JoinForm::WEEK_THIS;
elseif ($paramWeek - 1 == $localWeek)
return JoinForm::WEEK_NEXT;
else
throw new CException('A megadott dátum nem megfelelő!'); // ezt az exception-t kapom
}
UTC
Adatbázisból szedi a
OFF topic
1. hét - 1 != 52. hét
És tényleg... köszi! :)