Retourne la ligne suivante d'un ensemble de résultats sous forme d'objet

# mysqli_result::fetch_object

# mysqli_fetch_object

(PHP 5, PHP 7, PHP 8)

mysqli_result::fetch_object -- mysqli_fetch_object — Retourne la ligne suivante d'un ensemble de résultats sous forme d'objet

### Description

Style orienté objet

public function mysqli_result::fetch_object(string `$class` = "stdClass", array `$constructor_args` = []): object|null|false

Style procédural

function mysqli_fetch_object(mysqli_result `$result`, string `$class` = "stdClass", array `$constructor_args` = []): object|null|false

Retourne une ligne de données dans le jeu de résultats et la renvoie sous forme d'objet, où chaque propriété représente le nom de la colonne du jeu de résultats. Chaque appel ultérieur à cette fonction renverra la ligne suivante dans l'ensemble de résultats, ou `null` s'il n'y a plus de lignes.

Si deux ou plusieurs colonnes du résultat ont le même nom, la dernière colonne sera prioritaire et écrasera toutes les données précédentes. Pour accéder à plusieurs colonnes portant le même nom, la mysqli_fetch_row() peut être utilisée pour récupérer le tableau indexé numériquement ou des alias peuvent être utilisés dans la liste de sélection de la requête SQL pour donner des noms différents aux colonnes.

> Note: Cette fonction affecte les propriétés de l'objet avant d'en appeler le constructeur.

> Note: Les noms des champs retournés par cette fonction sont sensibles à la casse.

> Note: Cette fonction définit les champs NULL à la valeur PHP `null`.

### Liste de paramètres

`result`
  Style procédural uniquement : Un objet mysqli_result retourné par mysqli_query(), mysqli_store_result(), mysqli_use_result(), ou mysqli_stmt_get_result().
`class`

  Le nom de la classe à instancier. Si non fourni, un objet stdClass sera retourné.

`constructor_args`

  Un tableau de paramètres (optionnel) à passer au constructeur de l'objet `class`.

### Valeurs de retour

Retourne un objet représentant la ligne récupérée, où chaque propriété représente le nom de la colonne du jeu de résultats, `null` s'il n'y a plus de lignes dans le jeu de résultats, ou `false` si une erreur survient.

### Erreurs / Exceptions

Une ValueError est lancée quand `constructor_args` n'est pas vide et que la classe n'a pas de constructeur.

### Historique

Version | Description
--- | ---
8.3.0 | Lance désormais une exception ValueError quand `constructor_args` n'est pas vide et que la classe n'a pas de constructeur ; précédemment, une exception Exception était déclenchée.
8.0.0 | `constructor_args` accepte désormais `[]` pour les constructeurs avec 0 paramètre ; auparavant une exception était lancée.

### Exemples

Exemple #1 Exemple mysqli_result::fetch_object()

Style orienté objet

    <?php

    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

    $query = "SELECT Name, CountryCode FROM City ORDER BY ID DESC";

    $result = $mysqli->query($query);

    while ($obj = $result->fetch_object()) {
        printf("%s (%s)\n", $obj->Name, $obj->CountryCode);
    }

Style procédural

    <?php

    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    $link = mysqli_connect("localhost", "my_user", "my_password", "world");

    $query = "SELECT Name, CountryCode FROM City ORDER BY ID DESC";

    $result = mysqli_query($link, $query);

    while ($obj = mysqli_fetch_object($result)) {
        printf("%s (%s)\n", $obj->Name, $obj->CountryCode);
    }

Les exemples ci-dessus vont afficher quelque chose de similaire à :

    Pueblo (USA)
    Arvada (USA)
    Cape Coral (USA)
    Green Bay (USA)
    Santa Clara (USA)

### Voir aussi

- mysqli_fetch_array() - Récupère la ligne suivante d'un ensemble de résultats sous forme de tableau associatif, numérique ou les deux
- mysqli_fetch_assoc() - Récupère la ligne suivante d'un ensemble de résultats sous forme de tableau associatif
- mysqli_fetch_column() - Récupère une seule colonne de la ligne suivante d'un jeu de résultats
- mysqli_fetch_row() - Récupère une ligne de résultat sous forme de tableau indexé
- mysqli_query() - Exécute une requête sur la base de données
- mysqli_data_seek() - Déplace le pointeur interne de résultat

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open