(PHP 5, PHP 7, PHP 8)
mysqli_result::fetch_array -- mysqli_fetch_array — Obtiene la siguiente fila de un conjunto de resultados como un array asociativo, numérico o ambos
Estilo orientado a objetos
Estilo procedimental
Devuelve una fila de datos del conjunto de resultados y la retorna como un array.
Cada llamada posterior a esta función retornará la siguiente fila en el conjunto de resultados,
o null
si no hay más filas.
Además de almacenar los datos como un array con índices numéricos, también puede almacenarlos en un array asociativo, utilizando los nombres de los campos como claves.
Si dos o más columnas del resultado tienen el mismo nombre, la última columna tendrá prioridad y sobrescribirá todos los datos anteriores. Para acceder a las otras columnas con el mismo nombre, se debe utilizar el índice numérico o crear un alias para cada columna.
Nota: Los nombres de los campos devueltos por esta función son sensibles a la case.
Nota: Esta función define los campos NULL al valor PHP
null
.
result
Solo estilo procedimental: Un objeto mysqli_result devuelto por mysqli_query(), mysqli_store_result(), mysqli_use_result() o mysqli_stmt_get_result().
mode
El segundo argumento opcional es una constante que indica qué
tipo de array debe ser retornado a partir de la fila de datos
actual. Los valores posibles para este parámetro son las constantes
MYSQLI_ASSOC
, MYSQLI_NUM
,
y MYSQLI_BOTH
.
Al utilizar la constante MYSQLI_ASSOC
, esta función
se comportará como la función mysqli_fetch_assoc(),
mientras que MYSQLI_NUM
hará que actúe como la función
mysqli_fetch_row(). La constante
MYSQLI_BOTH
creará un array que será tanto
asociativo como indexado numéricamente.
Retorna un array que representa la fila recuperada,
null
si no hay más filas en el conjunto de resultados, o false
si ocurre un error.
Ejemplo #1 Ejemplo de mysqli_result::fetch_array()
Estilo orientado a objetos
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$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 asociativo y numérico */
$row = $result->fetch_array(MYSQLI_BOTH);
printf("%s (%s)\n", $row[0], $row["CountryCode"]);
Estilo procedimental
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = mysqli_query($mysqli, $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 asociativo y numérico */
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
printf("%s (%s)\n", $row[0], $row["CountryCode"]);
Los ejemplos anteriores mostrarán algo similar a :
Kabul (AFG) Qandahar (AFG) Herat (AFG)