El array que genera la siguiente consulta:
Código PHP:
$query="SELECT id,username FROM posters";
$result=$db->sql_query($query);
print_r($db->sql_fetchrow($result));
solo me genera el primer registro, con el while avanza al segundo y asi sucesivamente, es exactamente lo mismo que hace el mysql_fetch_assoc o mysql_fetch_row:
Código:
Array ( [id] => 1 [username] => admin )
ahora si hago un while de la siguiente forma:
Código PHP:
$query="SELECT id,username FROM posters";
$result=$db->sql_query($query);
while ($rows=$db->sql_fetchrow($result)){
print_r($rows);
}
me genera lo siguiente:
Código:
Array ( [id] => 1 [username] => admin )
Array ( [id] => 2 [username] => 829381 )
Array ( [id] => 3 [username] => 1862 )
Array ( [id] => 4 [username] => 750967 )
Array ( [id] => 5 [username] => 2020 )
etc.....
mientras que la clase de ZendFramework me genera todo el array de la consulta de una sola vez (sin while ni foreach):
Código PHP:
$result = $db->query('SELECT id,username FROM posters');
$rows = $result->fetchAll();
print_r($rows);
me genera:
Código PHP:
Array (
0] => Array ( [id] => 1 [username] => admin )
[1] => Array ( [id] => 2 [username] => 829381 )
[2] => Array ( [id] => 3 [username] => 1862 )
[3] => Array ( [id] => 4 [username] => 750967 )
[4] => Array ( [id] => 5 [username] => 2020 ) )