pg_fetch_array
pg_fetch_array
(PHP 4, PHP 5, PHP 7)
pg_fetch_array - 以数组的形式获取一行
描述
array pg_fetch_array ( resource $result [, int $row [, int $result_type = PGSQL_BOTH ]] )
pg_fetch_array()
返回一个对应于获取行(记录)的数组。
pg_fetch_array()
是pg_fetch_row()
的扩展版本。除了将数据以数字索引(字段编号)存储到结果数组之外,它还可以使用关联索引(字段名称)存储数据。它默认存储两个标记。
注意
:该函数将NULL
字段设置为PHPNULL
值。
pg_fetch_array()
不会比使用pg_fetch_row()慢得多,而且使用起来更加简单。
参数
result
PostgreSQL查询结果资源,由pg_query(),pg_query_params()或pg_execute()等返回。
row
结果中的行号用于提取。行从0开始编号。如果省略或者NULL
下一行被提取。
result_type
一个可选参数,用于控制返回数组的索引方式。result_type
是一个常量,可以采取以下值:PGSQL_ASSOC
,PGSQL_NUM
和PGSQL_BOTH
。使用PGSQL_NUM
,pg_fetch_array()
将返回数字索引的阵列,使用PGSQL_ASSOC
它会返回仅关联索引而PGSQL_BOTH
,默认值,将返回数字及关联索引。
返回值
数组索引(从0开始)或关联(按字段名称索引)或两者。数组中的每个值都表示为一个字符串。数据库NULL
值作为返回NULL
。
FALSE
如果row
超过集合中的行数,则没有更多行或出现任何其他错误。
例子
Example #1 pg
_
fetch
_
array() example
<?php
$conn = pg_pconnect("dbname=publisher"
if (!$conn) {
echo "An error occurred.\n";
exit;
}
$result = pg_query($conn, "SELECT author, email FROM authors"
if (!$result) {
echo "An error occurred.\n";
exit;
}
$arr = pg_fetch_array($result, 0, PGSQL_NUM
echo $arr[0] . " <- Row 1 Author\n";
echo $arr[1] . " <- Row 1 E-mail\n";
// The row parameter is optional; NULL can be passed instead,
// to pass a result_type. Successive calls to pg_fetch_array
// will return the next row.
$arr = pg_fetch_array($result, NULL, PGSQL_ASSOC
echo $arr["author"] . " <- Row 2 Author\n";
echo $arr["email"] . " <- Row 2 E-mail\n";
$arr = pg_fetch_array($result
echo $arr["author"] . " <- Row 3 Author\n";
echo $arr[1] . " <- Row 3 E-mail\n";
?>