pg_fetch_array
(PHP 4, PHP 5)
pg_fetch_array — 提取一行作为数组
<h3>说明</h3>
array <strong>pg_fetch_array</strong>
( resource <code>$result</code>
[, int <code>$row</code>
[, int <code>$result_type</code>
]] )
<p>
<strong>pg_fetch_array()</strong>
返回一个与所提取的行(元组/记录)相一致的数组。如果没有更多行可供提取,则返回
<strong><code>FALSE</code></strong>。
</p>
<p>
<strong>pg_fetch_array()</strong> 是 pg_fetch_row()
的扩展版本。在返回的数组中不仅以数字索引方式存放数据(字段编号),默认情况下还用字段名做索引存放数据(字段名)。
</p>
<p>
<code>row</code> 是想要取得的行(记录)的编号。第一行为 0。
</p>
<p>
<code>result_type</code> 是可选参数,控制着怎样初始化返回值。<code>result_type</code>
是一个常量,可以有以下取值:<strong><code>PGSQL_ASSOC</code></strong>,<strong><code>PGSQL_NUM</code></strong>
和 <strong><code>PGSQL_BOTH</code></strong>。取值为 <strong><code>PGSQL_ASSOC</code></strong> 时
<strong>pg_fetch_array()</strong> 返回用字段名作为键值索引的关联数组,取值为
<strong><code>PGSQL_NUM</code></strong> 时用字段编号作为键值,取值为
<strong><code>PGSQL_BOTH</code></strong> 时则同时用两者作为键值。默认值是 <strong><code>PGSQL_BOTH</code></strong>。
<p><strong>Note</strong>:
<p>
<code>result_type</code> 是在 PHP 4.0 中才加入的参数。
</p>
</p>
</p>
<p>
<strong>pg_fetch_array()</strong> 并不明显比使用 pg_fetch_row() 慢,而且在使用中提供了更大的方便。
</p>
<p>
<p><strong>Example #1 <strong>pg_fetch_array()</strong></strong></p>
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "An error occured.n";
exit;
}
$result = pg_query($conn, "SELECT * FROM authors");
if (!$result) {
echo "An error occured.n";
exit;
}
$arr = pg_fetch_array($result, 0, PGSQL_NUM);
echo $arr[0] . " <- arrayn";
$arr = pg_fetch_array($result, 1, PGSQL_ASSOC);
echo $arr["author"] . " <- arrayn";
?>
</p>
<p><strong>Note</strong>:
<p>
从 4.1.0 开始,<code>row</code> 成为可选参数。每次调用 <strong>pg_fetch_array()</strong>,内部的行计数器都会加一。
</p>
</p>
<p>
参见 pg_fetch_row() 和 pg_fetch_object() 以及 pg_fetch_result()。
</p>