# mysqli_result::fetch_assoc

# mysqli_fetch_assoc

(PHP 5, PHP 7, PHP 8)

mysqli_result::fetch_assoc -- mysqli_fetch_assoc — Obtener una fila de resultado como un array asociativo

### Descripción

Estilo orientado a objetos

mysqli_result::fetch_assoc(): array

Estilo por procedimientos

mysqli_fetch_assoc(mysqli_result `$result`): array

Retorna un array asociativo correspondiente a la fila obtenida o `null` si no hubiera más filas.

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

### Parámetros

`result`

  Sólo estilo por procedimientos: Un conjunto de identificadores de resultados devuelto por mysqli_query(), mysqli_store_result() o mysqli_use_result().

### Valores devueltos

Devuelve un array asociativo de strings que representa a la fila obtenida del conjunto de resultados, donde cada clave del array representa el nombre de una de las columnas de éste; o `null` si no hubieran más filas en dicho conjunto de resultados.

Si dos o más columnas del resultado tienen el mismo nombre de campo, la última columna tomará precedencia. Para acceder a la/s otra/s columna/s con el mismo nombre, es necesario acceder al resultado ya sea usando los índices numéricos mediante mysqli_fetch_row(), ya sea añadiéndole alias a los campos.

### Ejemplos

Ejemplo #1 Estilo orientado a objetos

`<?php
$mysqli = new mysqli("localhost", "mi_usuario", "mi_contraseña", "world");
/* verificar la conexión */
if ($mysqli->connect_errno) {
printf("Conexión fallida: %s\n", $mysqli->connect_error);
exit();
}
$consulta = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";
if ($resultado = $mysqli->query($consulta)) {
/* obtener un array asociativo */
while ($fila = $resultado->fetch_assoc()) {
printf ("%s (%s)\n", $fila["Name"], $fila["CountryCode"]);
}
/* liberar el conjunto de resultados */
$resultado->free();
}
/* cerrar la conexión */
$mysqli->close();
?>`

Ejemplo #2 Estilo por procedimientos

`<?php
$enlace = mysqli_connect("localhost", "mi_usuario", "mi_contraseña", "world");
/* verificar la conexión */
if (mysqli_connect_errno()) {
printf("Conexión fallida: %s\n", mysqli_connect_error());
exit();
}
$consulta = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";
if ($resultado = mysqli_query($enlace, $consulta)) {
/* obtener array asociativo */
while ($row = mysqli_fetch_assoc($resultado)) {
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
}
/* liberar el conjunto de resultados */
mysqli_free_result($resultado);
}
/* cerrar la conexión */
mysqli_close($link);
?>`

El resultado de los ejemplos sería:

    Pueblo (USA)
    Arvada (USA)
    Cape Coral (USA)
    Green Bay (USA)
    Santa Clara (USA)

Ejemplo #3 Un ejemplo de mysqli_result comparando el uso de iterator

`<?php
$c = mysqli_connect('127.0.0.1','user', 'pass');
// Usando iteradores (el soporte fue añadido con PHP 5.4)
foreach ( $c->query('SELECT user,host FROM mysql.user') as $fila ) {
printf("'%s'@'%s'\n", $fila['user'], $fila['host']);
}
echo "\n==================\n";
// Sin usar iteradores
$result = $c->query('SELECT user,host FROM mysql.user');
while ($fila = $result->fetch_assoc()) {
printf("'%s'@'%s'\n", $fila['user'], $fila['host']);
}
?>`

El resultado del ejemplo sería algo similar a:

    'root'@'192.168.1.1'
    'root'@'127.0.0.1'
    'dude'@'localhost'
    'lebowski'@'localhost'

    ==================

    'root'@'192.168.1.1'
    'root'@'127.0.0.1'
    'dude'@'localhost'
    'lebowski'@'localhost'

### Ver también

- mysqli_fetch_array() - Obtiene una fila de resultados como un array asociativo, numérico, o ambos
- mysqli_fetch_row() - Obtener una fila de resultados como un array enumerado
- mysqli_fetch_object() - Devuelve la fila actual de un conjunto de resultados como un objeto
- mysqli_query() - Realiza una consulta a la base de datos
- mysqli_data_seek() - Ajustar el puntero de resultado a una fila arbitraria del resultado