pg_fetch_assoc
pg_fetch_result
PostgreSQL Functions
PHP Manual

# pg_fetch_object

Fetch a row as an object

### 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 returns an object with properties that correspond to the fetched row's field names. It can optionally instantiate an object of a specific class, and pass parameters to that class's constructor.

> Note: This function sets NULL fields to the PHP `NULL` value.

Speed-wise, the function is identical to pg_fetch_array, and almost as fast as pg_fetch_row (the difference is insignificant).

### Parameters

`result`

  PostgreSQL query result resource, returned by pg_query, pg_query_params or pg_execute (among others).

`row`

  Row number in result to fetch. Rows are numbered from 0 upwards. If omitted or `NULL`, the next row is fetched.

`result_type`

  Ignored and deprecated.

`class_name`

  The name of the class to instantiate, set the properties of and return. If not specified, a stdClass object is returned.

`params`

  An optional array of parameters to pass to the constructor for `class_name` objects.

### Return Values

An object with one attribute for each field name in the result. Database NULL values are returned as `NULL`.

`FALSE` is returned if `row` exceeds the number of rows in the set, there are no more rows, or on any other error.

### Changelog

Version | Description
--- | ---
5.0.0 | `class_name` and `params` were added. The old form with `result_type` still exists for backwards compatibility.
4.3.0 | `result_type` default changed from `PGSQL_BOTH` to `PGSQL_ASSOC`, since the numeric index was illegal.
4.1.0 | The parameter `row` became optional.

### Examples

Example #1 pg_fetch_object example

`<?php
$database = "store";
$db_conn = pg_connect("host=localhost port=5432 dbname=$database");
if (!$db_conn) {
echo "Failed connecting to postgres database $database\n";
exit;
}
$qu = pg_query($db_conn, "SELECT * FROM books ORDER BY author");
while ($data = pg_fetch_object($qu)) {
echo $data->author . " (";
echo $data->year . "): ";
echo $data->title . "<br />";
}
pg_free_result($qu);
pg_close($db_conn);
?>`

### See Also

- pg_query
- pg_fetch_array
- pg_fetch_assoc
- pg_fetch_row
- pg_fetch_result