Neměl by AnnotationParser vracet pole místo ArrayObject?

- enumag
- Člen | 2118
Odpověď neznám, ale z kódu ArrayHash jsem vydedukoval, že se jedná
o třídu od které mají těžit další třídy které chtějí sjednotit
chování $obj->property a $obj['property'].
ArrayObject dělá něco jinýho, uvaž volání
$obj['property'] = $value:
$obj instanceof ArrayObject⇒ prostě uloží$valuedo nějaké vnitřní struktury$obj instanceof ArrayHash⇒ zavolá$obj->property = $value, což často vede na __set, záleží na implementaci
Pak jsem narazil ještě na ArrayList, což je zřejmě pole kde indexy mohou být jen číselné hodnoty a nemá díry, když odebereš něco zprostředka tak se zbytek posune. Aby toho nebylo málo tak tu máme ještě Spl datové struktury.

- uestla
- Backer | 799
ArrayHash by měl sloužit jako hash tabulka, čili klíč ⇒
hodnota,
pročež narozdíl od ArrayListu neumožňuje vložení prvku
nakonec
pomocí $arrayHash[] = 'item'.
Osobně ArrayHash používám mj. když chci šetřit paměť a nepředávat
si
skrz kód nativní pole a přemýšlet o referencích, předám prostě
instanci ArrayHash…