Mysql_fetch_array, mysql_fetch_row a mysql_fetch_assoc

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.

2 Replies to “Mysql_fetch_array, mysql_fetch_row a mysql_fetch_assoc”

  1. 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…

Napsat komentář: Ronnie Zrušit odpověď na komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..