Rechercher une fonction PHP

sqlsrv_fetch_object

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

sqlsrv_fetch_objectRécupère la prochaine ligne de données du jeu de résultats sous la forme d'un objet

Description

sqlsrv_fetch_object ( resource $stmt [, string $className [, array $ctorParams [, int $row [, int $offset ]]]] ) : mixed

Récupère la prochaine ligne de données du jeu de résultats sous la forme d'une instance de la classe spécifiée dont les propriétés correspondent aux noms des champs de la ligne récupérée et les valeurs correspondant aux valeurs des champs de la ligne récupérée.

Retour à la première page de Manuel PHP  Table des matières Haut

Liste de paramètres

stmt

Une ressource de requête créée par la fonction sqlsrv_query() ou la fonction sqlsrv_execute().

className

Le nom de la classe à instancier. Si aucun nom de classe n'est spécifié, stdClass sera instanciée.

ctorParams

Valeurs à passer au constructeur de la classe spécifiée. Si le constructeur de la classe spécifiée prend des paramètres, le tableau ctorParams doit être fourni.

row

La ligne à traiter. Ce paramètre ne peut être utilisé que si la requête spécifié a été préparée avec un curseur scrollable. Dans ce cas, ce paramètre peut prend un des valeurs suivantes :

  • SQLSRV_SCROLL_NEXT
  • SQLSRV_SCROLL_PRIOR
  • SQLSRV_SCROLL_FIRST
  • SQLSRV_SCROLL_LAST
  • SQLSRV_SCROLL_ABSOLUTE
  • SQLSRV_SCROLL_RELATIVE

offset

Spécifie la ligne à traiter si le paramètre row est défini à la valeur SQLSRV_SCROLL_ABSOLUTE ou SQLSRV_SCROLL_RELATIVE. Notez que la première ligne du jeu de résultats a un index de 0.

Retour à la première page de Manuel PHP  Table des matières Haut

Valeurs de retour

Retourne un objet en cas de succès, NULL s'il n'y a plus de ligne à retourner, et FALSE si une erreur survient ou si la classe spécifiée n'existe pas.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple avec sqlsrv_fetch_object()

L'exemple suivant montre la façon pour récupérer une ligne sous la forme d'un objet stdClass.

<?php
$serverName 
"serverName\sqlexpress";
$connectionInfo = array( "Database"=>"dbName""UID"=>"username""PWD"=>"password");
$conn sqlsrv_connect$serverName$connectionInfo);
if( 
$conn === false ) {
     die( 
print_rsqlsrv_errors(), true));
}

$sql "SELECT fName, lName FROM Table_1";
$stmt sqlsrv_query$conn$sql);
if( 
$stmt === false ) {
     die( 
print_rsqlsrv_errors(), true));
}

// Récupère chaque ligne sous la forme d'un objet
// Vu qu'aucune classe n'est spécifiée, chaque ligne sera récupéré sous la forme d'un objet stdClass.
// Les noms des propriétés correspondent aux noms des champs.
while( $obj sqlsrv_fetch_object$stmt)) {
      echo 
$obj->fName.", ".$obj->lName."<br />";
}
?>

Retour à la première page de Manuel PHP  Table des matières Haut

Notes

Si un nom de classe est spécifié avec le paramètre optionnel $className et la classe a des propriétés dont les noms correspondent à des noms de champs du jeu de résultats, les valeurs correspondantes du jeu de résultats seront appliquées à ces propriétés. Si un nom de champs du jeu de résultats ne correspond pas à une proriété de la classe, une propriété dont le nom correspond au nom du champs sera ajoutée à l'objet et la valeur correspondante dans le jeu de résultats sera appliquée à cette propriété. La règle suivante s'applique lors de l'utilisation du paramètre $className :

  • Le nom du champs et de la propriété sont sensibles à la casse.
  • La correspondance champs/propriété survient en tenant compte des modificateurs d'accès.
  • Les types de données des propriétés de la classe sont ignorées lors de l'application de la valeur d'un champs sur une propriété.
  • Si la classe n'existe pas, la fonction retourne FALSE et ajoute une erreur dans la collection des erreurs.
Suuivant si le paramètre $className est fourni ou non, si un champs avec aucun nom est retourné, la valeur du champs sera ignorée et une alerte sera ajoutée à la collection des erreurs.

Lors du traitement d'un jeu de résultats qui possède plusieurs colonnes portant le même nom, il peut être plus judicieux d'utiliser la fonction sqlsrv_fetch_array() ou une combinaison des fonctions sqlsrv_fetch() et sqlsrv_get_field().

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.sqlsrv-fetch-object.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut