Foros del Web » Programando para Internet » PHP »

Diferencia entre mysql_fetch_assoc/array

Estas en el tema de Diferencia entre mysql_fetch_assoc/array en el foro de PHP en Foros del Web. Hola gente: Como estaba sin hacer nada dije "porque no leer las FAQ -nuevamente-???", y aca estoy con una duda. En la pagina 2 de ...
  #1 (permalink)  
Antiguo 04/08/2005, 16:58
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 20 años, 11 meses
Puntos: 2
Diferencia entre mysql_fetch_assoc/array

Hola gente:

Como estaba sin hacer nada dije "porque no leer las FAQ -nuevamente-???", y aca estoy con una duda.

En la pagina 2 de faq-php dice que para reducir el consumo de recursos se puede usar mysql_fetch_assoc en lugar de mysql_fetch_array

El problema es que no entendí el porque...

Cuando me comviene usar assoc y cuando array?
__________________
I Love Programming...
  #2 (permalink)  
Antiguo 04/08/2005, 17:19
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
si te lees el manual de php tendras la respuesta a lo ke kieres http://www.php.net/mysql_fetch_assoc y http://www.php.net/mysql_fetch_array
  #3 (permalink)  
Antiguo 04/08/2005, 17:23
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
$fila = mysql_fetch_row(...), te devuelve un array con índices núméricos para los campos:
$fila[0], $fila[1], etc...

$fila = mysql_fetch_assoc(...), te devuelve un array asociativo (cadenas como índices) para los campos:
$fila['campo_1'], $fila['campo_2'], etc...

$fila = mysql_fetch_array(...), te devuelve un array con índices numéricos y asociativos. El tema de ahorrar recursos viene justamente porque esta función genera los dos arrays anteriores.

Saludos
  #4 (permalink)  
Antiguo 04/08/2005, 23:16
Avatar de DvD AdN  
Fecha de Ingreso: mayo-2005
Ubicación: Frente al monitor
Mensajes: 610
Antigüedad: 18 años, 11 meses
Puntos: 0
Oooooohhhhhh
Yo no sabia eso

Gracias por la data

Saludos
__________________
Keep f***ing learning
Ask for f***ing help.
Use f***ing spell check.
Think about all the f***ing possibilities.
  #5 (permalink)  
Antiguo 04/08/2005, 23:29
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 20 años, 11 meses
Puntos: 2
osea que para los que usamos siempre $fila["nombre_campo"] es mejor usar assoc...

lo voy a empezar a probar :p

Muchas gracias.
__________________
I Love Programming...
  #6 (permalink)  
Antiguo 05/08/2005, 11:31
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Thanx por la info
  #7 (permalink)  
Antiguo 05/08/2005, 12:38
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 18 años, 9 meses
Puntos: 3
pero. el fetch array se dice que puedes usar por las dos formas...


mysql_fecth_array$row['dato'] o como $row[0], siempre y cuando sepas en que posocion se encuentran.

claro esto viene conf. por default hay un parametro que puedes pasar solo para usar una de las 2 opciones...........
  #8 (permalink)  
Antiguo 05/08/2005, 14:18
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Eso es cierto vevni.
mysql_fetch_array() tiene un segundo parámetro opcional para indicar si queremos un array asociativo, numérico o ambos. Si no se especifica este parámetro, por defecto genera ambos.
Código PHP:
$fila mysql_fetch_array($resultMYSQL_NUM);
// Genarará un resultado similar a:
$fila mysql_fetch_row($result);

$fila mysql_fetch_array($resultMYSQL_ASSOC);
// Genarará un resultado similar a:
$fila mysql_fetch_assoc($result);

$fila mysql_fetch_array($resultMYSQL_BOTH);
// Genarará un resultado similar a:
$fila mysql_fetch_array($result); 
Lo que yo hice fue escribir a grandes rasgos las diferencias. Para ver la información completa basta con ver en el manual:
http://www.php.net/mysql_fetch_array

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:25.