sqlsrv_fetch_array
(No version information available, might only be in Git)
sqlsrv_fetch_array — Retourne une ligne sous la forme d'un tableau
Description
sqlsrv_fetch_array(
resource $stmt
,
int $fetchType
= ?,
int $row
= ?,
int $offset
= ?
): array
Liste de paramètres
-
stmt
-
Une ressource de requête retournée par
sqlsrv_query ou sqlsrv_prepare.
-
fetchType
-
Une constante prédéfinie spécifiant le type de tableau à
retourner. Les valeurs possibles sont
SQLSRV_FETCH_ASSOC
,
SQLSRV_FETCH_NUMERIC
, et
SQLSRV_FETCH_BOTH
(la valeur par défaut).
Le type de récupération SQLSRV_FETCH_ASSOC ne doit pas être
utilisé lors du traitement d'un jeu de résultats possédant
des colonnes dont le nom est identique.
-
row
-
Spécifie la ligne à traiter dans le jeu de résultats utilisant un
curseur scrollable. Les valeurs possibles sont
SQLSRV_SCROLL_NEXT
, SQLSRV_SCROLL_PRIOR
,
SQLSRV_SCROLL_FIRST
, SQLSRV_SCROLL_LAST
,
SQLSRV_SCROLL_ABSOLUTE
et,
SQLSRV_SCROLL_RELATIVE
(la valeur par défaut).
Lorsque ce paramètre est spécifié, le paramètre
fetchType
doit également être explicitement défini.
-
offset
-
Spécifie la ligne à accéder si le paramètre row est défini à
SQLSRV_SCROLL_ABSOLUTE
ou
SQLSRV_SCROLL_RELATIVE
. Notez que la première
ligne du jeu de résultats a comme index 0.
Valeurs de retour
Retourne un tableau en cas de succès, null
s'il n'y a plus de ligne
à retourner, et false
si une erreur survient.
Exemples
Exemple #1 Récupération d'un tableau associatif
<?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);
?>
Exemple #2 Récupération d'un tableau numérique
<?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);
?>
Notes
Le fait de ne pas spécifier le paramètre fetchType
ou le fait de le définir explicitement à la valeur
SQLSRV_FETCH_TYPE
dans l'exemple ci-dessus retournera
un tableau contenant à la fois des clés associatives et des clés numériques.
Si plus d'une colonne est retourné avec le même nom, la dernière colonne
prendra le dessus. Pour éviter d'avoir des problèmes avec les noms des
colonnes, utilisez des alias.
Si une colonne ne possédant aucun nom est retournée, la clé associative de l'élément
du tableau sera une chaîne vide ("").
Voir aussi
- sqlsrv_connect() - Ouvre une connexion sur une base de données Microsoft SQL Server
- sqlsrv_query() - Prépare et exécute une requête
- sqlsrv_errors() - Retourne une erreur ainsi que certaines informations sur la dernière opération SQLSRV effectuée
- sqlsrv_fetch() - Rend la prochaine ligne d'un jeu de résultats disponible pour lecture