Tyto tři funkce slouží pro naplnění pole při dotazu do mysql. Mysql_fetch_array v defaultním nastavení bez druhého nepovinného parametru vytváří dvě pole najednou a to pole s číselným, ale i asociativními idetifikátory. To je dosti neefektivní vytvářet dvě pole s různými indexy pro jedny data. Další možností je použít mysql_fetch_row , které vytváří pole s číselnými indexy. Ale kdo by používal číselné indexy, když asociativní (slovní) indexy jsou mnohem lépe použitelné. Pole s asociativními indexy vytváří mysql_fetch_assoc , které používím skoro jako jediné z těchto tří možností. Díky asociativnímu poli jsou proměnné krásně slovně popsané a zdrojový kód je přehlednější. Navíc nevytvářím číselné pole (ani duplicitně) a nemusím si pamatovat druhý parametr funkce.
Nedávno jsem v jedné větší aplikaci nahradil všechny mysql_fetch_array za mysql_fetch_assoc, protože se stejně používali jenom asociativní indexy. Výsledek byl krásný, mnohem menší zatížení serveru a myšlenky na koupi nového železa se odsunuli do budoucna. To jsem zase objevil Ameriku.
Vyměnil jsi mysql_fetch_array za mysql_fetch_assoc, ne? Nikoliv mysql_fetch_row za mysql_fetch_assoc, pak by menší zatížení serveru nenastalo…
Ano, máš pravdu, došlo k překlepu při psaní článku.