sqlsrv_num_fields
Recupera el número de campos de un conjunto de resultados activo. Tenga en cuenta que se puede llamar a sqlsrv_num_fields en cualquier instrucción preparada, antes o después de la ejecución.
Sintaxis
sqlsrv_num_fields( resource $stmt)
Parámetros
$stmt: Instrucción en la que el conjunto de resultados de destino está activo.
Valor devuelto
Un valor entero que representa el número de campos en el conjunto de resultados activo. Si se produce un error, se devuelve el valor booleano false.
Ejemplo
En el ejemplo siguiente se ejecuta una consulta para recuperar todos los campos de las tres filas superiores de la tabla HumanResources.Department de la base de datos AdventureWorks. La función sqlsrv_num_fields determina el número de campos del conjunto de resultados. Esto permite que los datos se muestren recorriendo en iteración los campos de cada fila devuelta.
En el ejemplo se supone que SQL Server y la base de datos AdventureWorks están instalados en el equipo local. Todos los resultados se escriben en la consola cuando el ejemplo se ejecuta desde la línea de comandos.
<?php
/* Connect to the local server using Windows Authentication and
specify the AdventureWorks database as the database in use. */
$serverName = "(local)";
$connectionInfo = array( "Database"=>"AdventureWorks");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Could not connect.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Define and execute the query. */
$tsql = "SELECT TOP (3) * FROM HumanResources.Department";
$stmt = sqlsrv_query($conn, $tsql);
if( $stmt === false)
{
echo "Error in executing query.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Retrieve the number of fields. */
$numFields = sqlsrv_num_fields( $stmt );
/* Iterate through each row of the result set. */
while( sqlsrv_fetch( $stmt ))
{
/* Iterate through the fields of each row. */
for($i = 0; $i < $numFields; $i++)
{
echo sqlsrv_get_field($stmt, $i,
SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_CHAR))." ";
}
echo "\n";
}
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt );
sqlsrv_close( $conn );
?>
Vea también
Referencia
Conceptos
Acerca de ejemplos de código en la documentación