mysql_fetch_array
získáte pole, které může mít jako klíče :
- čísla i názvy sloupců, pokud používáte
MYSQL_BOTH
- názvy sloupců pomocí
MYSQL_ASSOC
-- v tomto případě získáte totéž, co získáte při použitímysql_fetch_assoc
- pouze čísla (v závislosti na pořadí sloupců v dotazu), pokud používáte
MYSQL_NUM
Získání výsledků indexovaných podle názvů sloupců je pravděpodobně nejužitečnějším řešením - alespoň jednodušší na použití.
Ale získání výsledků indexovaných podle pozic polí v klauzuli select je zajímavé v jedné situaci:když máte několik sloupců, které mají stejný název nebo alias.
V tomto případě, protože nemůžete mít dvě položky se stejným index v poli, budete mít přístup pouze k jednomu z těchto sloupců pomocí názvu sloupce jako indexu.
Pro ostatní sloupce, které mají stejný název, budete muset použít číselné indexy.
Tato situace je pravděpodobně jediný případ, pro který bych použil mysql_fetch_array
-- a raději v dotazu používám aliasy, abych se takové situaci vyhnul -- je to podle mého názoru jasnější.
mysql_fetch_assoc
získáte pole s názvy sloupců jako klíči a daty jako hodnotami.
Vlastně není moc co říct.
A mysql_fetch_object
vám na oplátku získá předměty.
Výběr mezi mysql_fetch_assoc
a mysql_fetch_object
nejvíce pravděpodobně závisí na tom, jak vyvíjíte svou aplikaci:pokud používáte objekty všude, druhý je pravděpodobně nejvhodnější.
Pokud používáte pole jako datové kontejnery, můžete použít první z nich.