(PHP 5, PHP 7)
mysqli_result::fetch_array -- mysqli_fetch_array — Obtiene una fila de resultados como un array asociativo, numérico, o ambos
Estilo orientado a objetos
Estilo por procedimientos
Retorna un array que corresponde a la fila obtenida o NULL
si es que
no hay más filas en el resultset representado por el
parámetro result
.
mysqli_fetch_array() es una versión extendida de la función mysqli_fetch_row(). Además de guardar la información en los índices numéricos del array resultante, la función mysqli_fetch_array() también puede guardar la información en índices asociativos, utilizando los nombres de los campos del resultado como claves.
Nota: Los nombres de los campos devueltos por esta función son sensibles a mayúsculas y minúsculas.
Nota: Esta función define campos NULOS al valor
NULL
de PHP.
Si dos o más columnas del resultado tienen el mismo nombre de campo, la última columna tomará precedencia y sobrescribirá la información anterior. Para acceder a múltiples columnas con el mismo nombre, hay que usar la versión numéricamente indexada de la fila.
result
Sólo estilo por procedimientos: Un conjunto de identificadores de resultados devuelto por mysqli_query(), mysqli_store_result() o mysqli_use_result().
resulttype
Este parámetro opcional es una constante que indica qué tipo de array
debiera generarse con la información de la fila actual. Los valores posibles para
este parámetro son las constantes MYSQLI_ASSOC
,
MYSQLI_NUM
, o MYSQLI_BOTH
.
Al emplear la constante MYSQLI_ASSOC
esta función
se comportará de manera idéntica a mysqli_fetch_assoc(),
mientras que con MYSQLI_NUM
se comportará exactamente igual que
la función mysqli_fetch_row(). La última opción
MYSQLI_BOTH
creará un único array con los atributos de ambas dos.
Retorna un array de strings que corresponde a la fila obtenida o NULL
si
no hay más filas en el resultset.
Ejemplo #1 Estilo orientado a objetos
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* verificar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión failed: %s\n", $mysqli->connect_error);
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = $mysqli->query($query);
/* array numérico */
$row = $result->fetch_array(MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);
/* array asociativo */
$row = $result->fetch_array(MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
/* array numérico y asociativo */
$row = $result->fetch_array(MYSQLI_BOTH);
printf ("%s (%s)\n", $row[0], $row["CountryCode"]);
/* liberar la serie de resultados */
$result->free();
/* cerrar la conexión */
$mysqli->close();
?>
Ejemplo #2 Estilo por procedimientos
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* verificar la conexión */
if (mysqli_connect_errno()) {
printf("Conexión fallida: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = mysqli_query($link, $query);
/* array numérico */
$row = mysqli_fetch_array($result, MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);
/* array asociativo */
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
/* array numérico y asociativo */
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
printf ("%s (%s)\n", $row[0], $row["CountryCode"]);
/* liberar la serie de resultados */
mysqli_free_result($result);
/* cerrar la conexión */
mysqli_close($link);
?>
El resultado de los ejemplos sería:
Kabul (AFG) Qandahar (AFG) Herat (AFG)