(PHP 4, PHP 5, PHP 7, PHP 8)
pg_fetch_object — Fetch a row as an object
$result,$row = null,$class = "stdClass",$constructor_args = []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.
Зауваження: Ця функція встановлює NULL-полям значення PHP
null.
Speed-wise, the function is identical to pg_fetch_array(), and almost as fast as pg_fetch_row() (the difference is insignificant).
resultПримірник PgSql\Result, якого повертає одна з функцій pg_query(), pg_query_params() або pg_execute() (серед інших).
row
Row number in result to fetch. Rows are numbered from 0 upwards. If
omitted or null, the next row is fetched.
classThe name of the class to instantiate, set the properties of and return. If not specified, a stdClass object is returned.
constructor_args
An optional array of parameters to pass to the constructor
for class objects.
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.
A ValueError is thrown when
the constructor_args is non-empty with the class not having constructor.
| Версія | Опис |
|---|---|
| 8.3.0 |
Now throws a ValueError exception when
the constructor_args is non-empty with the class not having constructor;
previously an Exception was thrown.
|
| 8.1.0 |
Тепер параметр result має бути примірником
PgSql\Result. Раніше очікувався resource.
|
Приклад #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);
?>