pg_fetch_object

(PHP 3 >= 3.0.1, PHP 4, PHP 5)

pg_fetch_object -- Fetch a row as an object

Description

object pg_fetch_object ( resource result [, int row [, int result_type]] )

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 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, next row is fetched.

result_type

Ignored and deprecated. Defaults to PGSQL_ASSOC.

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

VersionDescription
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()