En este tutorial, aprenderemos cómo usar la función mysqli_fetch_array en php. Esta función nos permite recuperar filas de una base de datos MySQL y almacenarlas como una matriz de PHP. La función le permite almacenar los valores como una matriz asociativa, una matriz numérica o una combinación de ambos. Entonces puedes manipular la matriz como de costumbre. Vamos a sumergirnos.
Sintaxis de funciones
El siguiente fragmento muestra la sintaxis de procedimiento para la función mysqli_fetch_array:
mysqli_fetch_array (mysqli_result $ resultado, int $ mode = mysqli_both): array | nulo | falso
Los parámetros de la función son como se muestra:
- Resultado: este parámetro le permite especificar el objeto mysql_result devuelto por mysqli_query (), mysqli_store_result (), mysqli_stmt_get_result () o mysqli_use_result () functions.
- Modo: el parámetro de modo define el tipo de matriz utilizada para almacenar los valores resultantes. Los valores aceptados incluyen:
- Mysqli_assoc - matriz asociativa.
- Mysqli_num - matriz numérica.
- Mysqli_both - una combinación de la matriz asociativa y numérica.
La función luego devolverá la matriz con las filas obtenidas. Si no hay filas obtenidas, la función devuelve nula o falso en la falla.
Uso de ejemplo
Discutamos un ejemplo de usar la función mysqli_fetch_array (). Comience creando una base de datos, tabla y datos de muestra como se muestra en la consulta a continuación:
Crear base de datos SRC;
Usar src;
Tabla de caída si existe stack_mapping;
Crear tabla stack_mapping (
ID int Auto_Increment Key primario,
server_name varchar (50) no nulo,
dirección varchar (100) no nula,
instalado_version varchar (50),
Tool_id int
);
Insertar en stack_mapping (server_name, dirección, instalado_version, tool_id)
Valores ('SQL Server', 'Localhost: 1433', '15.0 ', 1),
('Elasticsearch', 'localhost: 9200', '8.4 ', 2),
('Redis', 'Localhost: 6379', '6.0 ', 3),
('PostgreSQL', 'Localhost: 5432', '14.5 ', 4),
('Mysql', 'localhost: 3306', '8.0 ', nulo);
La tabla resultante es como se muestra:
El siguiente ejemplo muestra cómo usar la función PHP mysqli_fetch_array para devolver las filas de la tabla de arriba como una matriz.
Comience creando un archivo PHP:
$ touch fetch.php
Editar el archivo:
$ Vim Fetch.php
Agregue el código como se muestra:
$ mysqli = mysqli_connect ("localhost: 3306", "root", "", "src");
if (mysqli_connect_errno ())
morir ("no se pudo conectar");
$ query = "Seleccione Server_Name, dirección desde Stack_mapping";
$ result = mysqli_query ($ mysqli, $ consuly);
while ($ row = mysqli_fetch_array ($ resultado, mysqli_assoc))
printf ("%s (%s) \ n", $ row ["server_name"], $ row ["dirección"]);
mysqli_free_result ($ resultado);
?>
Finalmente, ejecute el script con PHP:
Php RetRing.php
Esto debería devolver las filas como una matriz asociativa, también conocida como diccionario en otros lenguajes de programación.
Nota: Nota Estamos accediendo a los valores del diccionario utilizando el nombre de la fila (clave del diccionario).
Una salida de ejemplo es como se muestra:
SQL Server (localhost: 1433)
Elasticsearch (localhost: 9200)
Redis (localhost: 6379)
PostgreSQL (localhost: 5432)
Mysql (localhost: 3306)
Para devolver los valores como una matriz numérica, podemos usar la consulta:
$ mysqli = mysqli_connect ("localhost: 3306", "root", "", "src");
if (mysqli_connect_errno ())
morir ("no se pudo conectar");
$ query = "Seleccione Server_Name, dirección desde Stack_mapping";
$ result = mysqli_query ($ mysqli, $ consuly);
while ($ row = mysqli_fetch_array ($ resultado, mysqli_num))
printf ("%s (%s) \ n", $ fila [0], $ fila [1]);
mysqli_free_result ($ resultado);
?>
Del mismo modo, el código anterior debe devolver las filas como:
SQL Server (localhost: 1433)
Elasticsearch (localhost: 9200)
Redis (localhost: 6379)
PostgreSQL (localhost: 5432)
Mysql (localhost: 3306)
Finalmente, para obtener los resultados como matrices asociativas y numéricas.
$ mysqli = mysqli_connect ("localhost: 3306", "root", "", "src");
if (mysqli_connect_errno ())
morir ("no se pudo conectar");
$ query = "Seleccione Server_Name, dirección desde Stack_mapping";
$ result = mysqli_query ($ mysqli, $ consuly);
while ($ row = mysqli_fetch_array ($ resultado, mysqli_both))
printf ("%s (%s) \ n", $ fila [0], $ fila ["dirección"]);
mysqli_free_result ($ resultado);
?>
Conclusión
En este artículo, aprendió a usar la función mysqli_fetch_array en php para obtener las filas de una base de datos como una matriz.