Posts Tagged ‘PHP’

Ztracená hodina

Čtvrtek, Únor 7th, 2008

Právě jsem ztrávil téměř hodinu přemítáním nad tím, jestli je větší tupec PHP nebo já.

Měl jsem kód v tomto smyslu:

$a = array(
                1 =>"one",
                3 =>"two",
                5 => "three"
          );
foreach($a as $key=>&$val) {
        if($key == 3) {
                unset($a[$key]);
        } else {
                $val = 'changed';
        }
        unset($key, $val);

}
print_r($a);

Očekávaný výstup byl:

Array
(
    [1] => changed
    [5] => changed
)

ale já pořád dostával:

Array
(
    [1] => changed
    [5] => three
)

Když už jsem došel do stádia, kdy jsem byl přesvědčen, že větší blbec je PHP, otevřel jsem bugzillu PHP a po chvíli neuspěšného hledání stejné chyby jsem zakládal nový bug report.

Jeden z prvních údajů, které jsem ale musel vyplnit, bylo verze PHP. Používám 5.2.0, což je mimo jiné aktuálně i verze v Debian stable, což je náš hosting. Tato verze ale na výběr nebyla a byl jsem instruován upgradovat na 5.2.5. Pokorně jsem poslechl a stáhl 5.2.5. K mé zlosti se problém v této verzi už neobjevuje. Ani v changelogu jsem ale nenašel žádný záznam, který by se této chyby týkal.

Vzhledem k tomu, že Debian asi jen tak upgradovat nebude, budu muset najít nějaký způsob, jak to obejít.