★ wanayoo — archive 1999 http://www.php.net/manual/function.pg-fetch-object.phpNouvelle recherche | Portail wanayoo

PHP Home Page

Manual Table of Contents
Up to PostgreSQL
Quick Reference
PostgreSQL
* pg_Close
* pg_cmdTuples
* pg_Connect
* pg_DBname
* pg_ErrorMessage
* pg_Exec
* pg_Fetch_Array
* pg_Fetch_Object
* pg_Fetch_Row
* pg_FieldIsNull
* pg_FieldName
* pg_FieldNum
* pg_FieldPrtLen
* pg_FieldSize
* pg_FieldType
* pg_FreeResult
* pg_GetLastOid
* pg_Host
* pg_loclose
* pg_locreate
* pg_loexport
* pg_loimport
* pg_loopen
* pg_loread
* pg_loreadall
* pg_lounlink
* pg_lowrite
* pg_NumFields
* pg_NumRows
* pg_Options
* pg_pConnect
* pg_Port
* pg_Result
* pg_trace
* pg_tty
* pg_untrace
Manual: pg_Fetch_Object
View the source code for this pageSearch the site



Previous page
 pg_Fetch_Array
pg_Fetch_Row 
Next page


pg_Fetch_Object

(unknown)

pg_Fetch_Object -- fetch row as object

Description

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

Returns: An object with properties that correspond to the fetched row, or false if there are no more rows.

pg_fetch_object() is similar to pg_fetch_array(), with one difference - an object is returned, instead of an array. Indirectly, that means that you can only access the data by the field names, and not by their offsets (numbers are illegal property names).

The third optional argument result_type in pg_fetch_object() is a constant and can take the following values: PGSQL_ASSOC, PGSQL_NUM, and PGSQL_BOTH.

Note: Result_type was added in PHP 4.0.

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

See also: pg_fetch_array() and pg_fetch_row().

Example 1. Postgres fetch object

  1 
  2 <?php 
  3 $database = "verlag";
  4 $db_conn = pg_connect ("localhost", "5432", "", "", $database);
  5 if (!$db_conn): ?>
  6     <H1>Failed connecting to postgres database <? echo $database ?></H1> <?
  7     exit;
  8 endif;
  9 
 10 $qu = pg_exec ($db_conn, "SELECT * FROM verlag ORDER BY autor");
 11 $row = 0; // postgres needs a row counter other dbs might not 
 12 
 13 while ($data = pg_fetch_object ($qu, $row)):
 14     echo $data->autor." (";
 15     echo $data->jahr ."): ";
 16     echo $data->titel."<BR>";
 17     $row++;
 18 endwhile; ?>
 19 
 20 <PRE><?php
 21 $fields[] = Array ("autor", "Author");
 22 $fields[] = Array ("jahr",  "  Year");
 23 $fields[] = Array ("titel", " Title");
 24 
 25 $row= 0; // postgres needs a row counter other dbs might not
 26 while ($data = pg_fetch_object ($qu, $row)):
 27     echo "----------\n";
 28     reset ($fields);
 29     while (list (,$item) = each ($fields)):
 30         echo $item[1].": ".$data->$item[0]."\n";
 31     endwhile;
 32     $row++;
 33 endwhile;
 34 echo "----------\n"; ?>
 35 </PRE> <?php
 36 pg_freeResult ($qu);
 37 pg_close ($db_conn);
 38 ?>
 39       


User Contributed Notes: pg_Fetch_Object


cone@planet.com.mx
27-Aug-1999 11:03
How do you acces data of a object that was fetched from join query and table have the same field name's.? table computers id|descr table monitors id|descr $res=pg_exec($conn, "select w.id, w.descr, z.descr from computers w, monitors z where w.id=z.id); $data=pg_fecht_object($result,0); Now i want to print a table with id, descr(From computers), descr(From monitors) echo $data->id, $data->descr, $data->????


waddell@caravan.com
30-Aug-1999 05:30
In answer to your question about field names in a query result when doing a join in SQL, you can can do something like "select w.id as id, w.descr as wdescr, z.descr as zdescr...".


11h11@videotron.ca
17-Jan-2000 01:03
I copy paste the code, but I got this message??? Warning: Unable to jump to row 2144 on PostgresSQL result index 2 in /usr/local/apache/htdocs/php/selectall.php3 on line 10


simon@eecs.tulane.edu
19-Jan-2000 06:09
You are getting the - Warning: Unable to jump to row 2144 on PostgresSQL result index 2 - error because your $result is empty. To check whether or not the $result = pg_exec($conn,$sql ) command works I use:
$rows = PG_NUMROWS($result);
Then I check to see if $rows<1, if it is then pg_Fetch_Object() will return an error.


dwcjr@inethouston.net
01-May-2000 09:36
This happens when your variable pointing to what row you are in exceeds how many rows are returned, not just if the query doesn't return any results. You can turn off warnings in php.ini


 About Notes


Previous page
 pg_Fetch_Array
pg_Fetch_Row 
Next page



Site Statistics


Who's responsible for this?
Top of this page

Site
Hosting:



Located in
United States
Elements of this website are subject to copyright.
Questions about installing or using PHP should be directed to one of the mailing lists.
Only questions about the website should be directed to webmaster@php.net.