sqlsrv_num_fields

Récupère le nombre de champs dans un jeu de résultats actif. Notez que la fonction sqlsrv_num_fields peut être appelée sur n'importe quelle instruction préparée, avant ou après l'exécution.

Syntaxe

sqlsrv_num_fields( resource $stmt)

Paramètres

$stmt : instruction sur laquelle le jeu de résultats ciblé est actif.

Valeur de retour

Valeur entière qui représente le nombre de champs dans le jeu de résultats actif. Si une erreur se produit, la valeur booléenne false est retournée.

Exemple

L'exemple suivant exécute une requête pour récupérer tous les champs qui correspondent aux trois premières lignes de la table HumanResources.Department de la base de données AdventureWorks. La fonction sqlsrv_num_fields détermine le nombre de champs du jeu de résultats. Cela permet d'afficher les données en parcourant les champs de chaque ligne retournée.

L'exemple suppose que SQL Server et la base de données AdventureWorks sont installés sur l'ordinateur local. Toutes les données de sortie sont écrites dans la console lorsque l'exemple est exécuté à partir de la ligne de commande.

<?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 );
?>

Voir aussi

Référence

sqlsrv_field_metadata

Concepts

À propos des exemples de code dans la documentation

Autres ressources

Référence de l'API (Pilote SQL Server pour PHP)