Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > main > by-pkgid > 0afeee9cca140e167a996902b9a677c5 > files > 2198

php-manual-en-4.3.0-2mdk.noarch.rpm

<HTML
><HEAD
><TITLE
>pg_fetch_object</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="PHP Manual"
HREF="index.html"><LINK
REL="UP"
TITLE="PostgreSQL functions"
HREF="ref.pgsql.html"><LINK
REL="PREVIOUS"
TITLE="pg_fetch_assoc"
HREF="function.pg-fetch-assoc.html"><LINK
REL="NEXT"
TITLE="pg_fetch_result"
HREF="function.pg-fetch-result.html"><META
HTTP-EQUIV="Content-type"
CONTENT="text/html; charset=ISO-8859-1"></HEAD
><BODY
CLASS="refentry"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>PHP Manual</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="function.pg-fetch-assoc.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="function.pg-fetch-result.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="function.pg-fetch-object"
></A
>pg_fetch_object</H1
><DIV
CLASS="refnamediv"
><A
NAME="AEN76820"
></A
><P
>    (PHP 3&#62;= 3.0.1, PHP 4 )</P
>pg_fetch_object&nbsp;--&nbsp;Fetch a row as an object</DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN76823"
></A
><H2
>Description</H2
>object <B
CLASS="methodname"
>pg_fetch_object</B
> ( resource result [, int row [, int result_type]])<BR
></BR
><P
>&#13;     <B
CLASS="function"
>pg_fetch_object()</B
> returns an object with
     properties that correspond to the fetched row. It returns <TT
CLASS="constant"
><B
>FALSE</B
></TT
>
     if there are no more rows or error.
    </P
><P
> 
     <B
CLASS="function"
>pg_fetch_object()</B
> is similar to
     <A
HREF="function.pg-fetch-array.html"
><B
CLASS="function"
>pg_fetch_array()</B
></A
>, 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).
    </P
><P
>&#13;     <TT
CLASS="parameter"
><I
>row</I
></TT
> is row (record) number to be
     retrieved. First row is 0.
    </P
><P
>&#13;     Speed-wise, the function is identical to
     <A
HREF="function.pg-fetch-array.html"
><B
CLASS="function"
>pg_fetch_array()</B
></A
>, and almost as quick as
     <A
HREF="function.pg-fetch-row.html"
><B
CLASS="function"
>pg_fetch_row()</B
></A
> (the difference is
     insignificant).
    </P
><DIV
CLASS="note"
><BLOCKQUOTE
CLASS="note"
><P
><B
>Note: </B
>
      From 4.1.0, <TT
CLASS="parameter"
><I
>row</I
></TT
> is optional.
     </P
><P
>&#13;      From 4.3.0, <TT
CLASS="parameter"
><I
>result_type</I
></TT
> is default to PGSQL_ASSOC while
      older versions' default was PGSQL_BOTH. There is no use for numeric property, 
      since numeric property name is invalid in PHP.
     </P
><P
>&#13;      <TT
CLASS="parameter"
><I
>result_type</I
></TT
> may be deleted in future versions.
     </P
></BLOCKQUOTE
></DIV
><P
> 
     See also <A
HREF="function.pg-query.html"
><B
CLASS="function"
>pg_query()</B
></A
>, <A
HREF="function.pg-fetch-array.html"
><B
CLASS="function"
>pg_fetch_array()</B
></A
>,
     <A
HREF="function.pg-fetch-row.html"
><B
CLASS="function"
>pg_fetch_row()</B
></A
> and <A
HREF="function.pg-fetch-result.html"
><B
CLASS="function"
>pg_fetch_result()</B
></A
>.
    </P
><P
>&#13;     <TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN76861"
></A
><P
><B
>Example 1. Postgres fetch object</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><PRE
CLASS="php"
>&#60;?php 
$database = "verlag";
$db_conn = pg_connect ("host=localhost port=5432 dbname=$database");
if (!$db_conn): ?&#62;
    &#60;H1&#62;Failed connecting to postgres database &#60;?php echo $database ?&#62;&#60;/H1&#62; &#60;?php
    exit;
endif;

$qu = pg_query ($db_conn, "SELECT * FROM verlag ORDER BY autor");
$row = 0; // postgres needs a row counter other dbs might not 

while ($data = pg_fetch_object ($qu, $row)) {
    echo $data-&#62;autor." (";
    echo $data-&#62;jahr ."): ";
    echo $data-&#62;titel."&#60;BR&#62;";
    $row++;
}
?&#62;
&#60;PRE&#62;
&#60;?php
$fields[] = Array ("autor", "Author");
$fields[] = Array ("jahr",  "  Year");
$fields[] = Array ("titel", " Title");

$row= 0; // postgres needs a row counter other dbs might not
while ($data = pg_fetch_object ($qu, $row)) {
    echo "----------\n";
    reset ($fields);
    while (list (,$item) = each ($fields)):
        echo $item[1].": ".$data-&#62;$item[0]."\n";
    endwhile;
    $row++;
}
echo "----------\n"; 
?&#62;
&#60;/PRE&#62; 
&#60;?php
pg_free_result ($qu);
pg_close ($db_conn);
?&#62;</PRE
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
>
    </P
><DIV
CLASS="note"
><BLOCKQUOTE
CLASS="note"
><P
><B
>Note: </B
>
      From 4.1.0, <TT
CLASS="parameter"
><I
>row</I
></TT
> became optional.
      Calling <B
CLASS="function"
>pg_fetch_object()</B
> will increment 
      internal row counter counter by 1.
     </P
></BLOCKQUOTE
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="function.pg-fetch-assoc.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="function.pg-fetch-result.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>pg_fetch_assoc</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="ref.pgsql.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>pg_fetch_result</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>