pg_fetch_assoc
pg_fetch_result
Fonctions PostgreSQL
PHP Manual

# pg_fetch_object

(PHP 4, PHP 5)

pg_fetch_object — Lit une ligne de résultat PostgreSQL dans un objet

### Description

object pg_fetch_object ( resource `$result` [, int `$row` [, int `$result_type` = PGSQL_ASSOC ]] )
object pg_fetch_object ( resource `$result` [, int `$row` [, string `$class_name` [, array `$params` ]]] )

pg_fetch_object() retourne un objet ainsi que ses propriétés qui correspond aux noms des champs de la ligne. La fonction peut optionnellement instancier un objet d'une classe spécifique et passer les paramètres au constructeur de cette classe.

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

Du point de vue vitesse, la fonction est identique à pg_fetch_array() et est presque aussi rapide que pg_fetch_row() (la différence est insignifiante).

### Liste de paramètres

`result`

  Ressource de résultat de requête PostgreSQL, retournée par pg_query(), pg_query_params() ou pg_execute() (entre autres).

`row`

  Numéro de la ligne à récupérer. Les lignes sont numérotées de 0 en montant. Si l'argument est omis, la ligne suivante est récupérée.

`result_type`

  Ignoré et obsolète.

`class_name`

  Le nom de la classe à instancier, fixe les propriétés de celles-ci et ses valeurs de retour. Si rien n'est spécifié, un objet de style stdClass est retourné.

`params`

  Paramètre optionnel de type array pour passer des arguments au constructeur de la classe `class_name`.

### Valeurs de retour

Un objet de type object avec les attributs pour chaque champ dans le jeu de résultats. Les valeurs `NULL` de la base de données sont retournées `NULL`.

`FALSE` est retournée si `row` excède le nombre de lignes dans le jeu de résultats, n'a plus de ligne disponible ou tout autre erreur.

### Historique

Version | Description
--- | ---
5.0.0 | `class_name` et `params` ont été ajoutés. L'ancien format du paramètre `result_type` existe toujours pour des raisons de compatibilité avec les versions antérieures.
4.3.0 | `result_type` ne vaut plus `PGSQL_BOTH` par défaut, mais `PGSQL_ASSOC`, depuis que l'index numérique est devenu illégal.
4.1.0 | Le paramètre `row` devient optionnel.

### Exemples

Exemple #1 Exemple avec pg_fetch_object()

`<?php
$database = 'store';
$db_conn = pg_connect("host=localhost port=5432 dbname=$database");
if (!$db_conn) {
echo "La connexion a la base $database a échouée\n";
exit;
}
$qu = pg_query($db_conn, "SELECT * FROM livres ORDER BY auteur");
while ($data = pg_fetch_object($qu)) {
echo $data->auteur . " (";
echo $data->annee . "): ";
echo $data->titre . "<br />";
}
pg_free_result($qu);
pg_close($db_conn);
?>`

### Voir aussi

- pg_query() - Exécute une requête PostgreSQL
- pg_fetch_array() - Lit une ligne de résultat PostgreSQL dans un tableau
- pg_fetch_assoc() - Lit une ligne de résultat PostgreSQL sous forme de tableau associatif
- pg_fetch_row() - Lit une ligne dans un tableau
- pg_fetch_result() - Retourne les valeurs d'un résultat

pg_fetch_assoc
pg_fetch_result
Fonctions PostgreSQL
PHP Manual