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字段设置为PHP
NULL
值。
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";
?>
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com