ArrayHash a hodnota klíče je null
- Letadlogroup.org
- Člen | 5
Dobrý den,
narazil jsem na problém s arrayHash. Když se zeptám funkcí offsetExists na klíč jehož hodnota je null například u degreePostfix vrátí funkce false i když klíč existuje. Nevíte jak tento problém řešit, prosím? Příjde mi totiž, že to je spíš bug a ne standardní chování.
Dík Honza
<script>
Nette\ArrayHash(6) {
idCustomerOld => "1763" (4)
degreePrefix => "MUDr." (5)
firstName => "Renata" (6)
lastName => "Horká" (6)
degreePostfix => NULL
birthday => "03. 02. 1968" (12)
}
</script>
- Letadlogroup.org
- Člen | 5
Děkuji za typ. Jen taková poznámka k zamyšlení. Neměl by ArrayHash být chytřejší než obyčejné pole a toto řešit.
- Filip Procházka
- Moderator | 4668
Nette\ArrayHash z podstaty imituje pole (a ArrayObject?), takže proč by se měl chovat jinak, než zbytek jazyka?
- David Grudl
- Nette Core | 8228
Letadlogroup.org napsal(a):
Děkuji za typ. Jen taková poznámka k zamyšlení. Neměl by ArrayHash být chytřejší než obyčejné pole a toto řešit.
isset je funkce, která pro NULL vrací FALSE, tudíž taková chytrost by šla proti principům PHP.
- Nox
- Člen | 378
Koukajíc na API – jaké je vlastně opodstatnění mít ArrayHash? U Doctrine\Common dejme tomu Collection, poskytuje nějakou funkcionalitu objektovým způsobem
Nevidím, že by ArrayHash poskytoval cokoli, jediný rozdíl od pole asi je, že neprojde array typehintem…
Pojistka na budoucí změny?
Editoval Nox (26. 10. 2011 7:30)
- David Grudl
- Nette Core | 8228
Má jen dvě vlastnosti:
- syntaktická: dá se používat zápis $values->item místo $values[‚item‘]
- přetypovatelnost: (array) $values vytvoří z tohoto objektu odpovídající pole