# sqlsrv_fetch_array

(No version information available, might only be in Git)

sqlsrv_fetch_array — Devuelve una fila como un array

### Descripción

sqlsrv_fetch_array(
resource `$stmt`,
int `$fetchType` = ?,
int `$row` = ?,
int `$offset` = ?
): array

Devuelve la siguiente fila de datos disponible como un array asociativo, un array numérico, o ambos (por defecto).

### Parámetros

`stmt`

  Un recurso de sentencia devuelta por sqlsrv_query o sqlsrv_prepare.

`fetchType`

  Una constante predefinida con el tipo de array a devolver. Los valores posibles son `SQLSRV_FETCH_ASSOC`, `SQLSRV_FETCH_NUMERIC`, y `SQLSRV_FETCH_BOTH` (por defecto).

  El tipo de objeto devuelto SQLSRV_FETCH_ASSOC no debe utilizarse cuando se trate un conjunto de resultados con múltiples columnas con el mismo nombre.

`row`

  Especifica la fila para acceder a un conjunto de resultados que utiliza un cursor con scroll. Los valores posibles son `SQLSRV_SCROLL_NEXT`, `SQLSRV_SCROLL_PRIOR`, `SQLSRV_SCROLL_FIRST`, `SQLSRV_SCROLL_LAST`, `SQLSRV_SCROLL_ABSOLUTE` y, `SQLSRV_SCROLL_RELATIVE` (por defecto). Cuando se especifica este parámetro, el parámetro `fetchType` debe ser definido explícitamente.

`offset`

  Especifica la fila a la que se desea acceder si el parámetro de fila se define como `SQLSRV_SCROLL_ABSOLUTE` o `SQLSRV_SCROLL_RELATIVE`. Notar que la primera fila en un conjunto de resultado tiene el índice 0.

### Valores devueltos

Devuelve un array en caso de éxito, `null` si no hay más filas a devolver, y `false` si se produce un error.

### Ejemplos

Ejemplo #1 Devolver un array asociativo.

`<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['LastName'].", ".$row['FirstName']."<br />";
}
sqlsrv_free_stmt( $stmt);
?>`

Ejemplo #2 Devolver un array numérico.

`<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC) ) {
echo $row[0].", ".$row[1]."<br />";
}
sqlsrv_free_stmt( $stmt);
?>`

### Notas

Cuando no se especifica el parámetro `fetchType` o se utiliza explícitamente la constante `SQLSRV_FETCH_TYPE` en los ejemplos anteriores, se devolverá un array que tiene tanto claves asociativas como claves nuéricas.

Si se devuelve más de una columna con el mismo nombre, la última columna tendrá prioridad para tomar el nombre. Para evitar colisiones de nombre de campo, utilizar alias.

Si se devuelve una columna sin nombre, la clave asociativa para ese elemento del array será un string vacío ("").

### Ver también

- sqlsrv_connect() - Abre una conexión a una base de datos Microsoft SQL Server
- sqlsrv_query() - Prepares and executes a query
- sqlsrv_errors() - Devuelve información de errores y alertas (warnings) de la última operación SQLSRV realizada
- sqlsrv_fetch() - Hace que esté disponible para ser leída la siguiente fila del conjunto de resultado