(PHP 4, PHP 5, PHP 7)
pg_fetch_array — Retorna uma linha (registro) como um array
$result
[, int $row
[, int $result_type
]] )
pg_fetch_array() retorna um array que corresponde à
linha (registro). Retorna FALSE
se não existem mais linhas.
pg_fetch_array() é uma versão extendida de pg_fetch_row(). Além de armazenar os dados em índices numéricos (índice) no array resultante, também armazena os dados em chaves associativas (nome do campo) por padrão.
row
é o número da linha (registro) a ser
recuperado. A primeira linha é 0.
result_type
é um parâmetro opcional que
controla como o valor de retorno é iniciado.
result_type
é uma constante e pode ter os
seguintes valores: PGSQL_ASSOC
, PGSQL_NUM
, e PGSQL_BOTH
.
pg_fetch_array() retorna um array associativo que tem
o nome de campo como chave para PGSQL_ASSOC
. Índice de campo como chave
com PGSQL_NUM
e ambos nome/índice numérico como chave com PGSQL_BOTH
. O valor
padrão é PGSQL_BOTH
.
Nota:
O parâmetro
result_type
foi adicionado no PHP 4.0.
pg_fetch_array() NÃO é significativamente mais lenta que pg_fetch_row(), e ainda fornece uma significativa facilidade de uso.
Exemplo #1 Retornando linhas (registros) no PostgreSQL
<?php
$conn = pg_pconnect("dbname=publicar");
if (!$conn) {
echo "Um erro ocorreu.\n";
exit;
}
$result = pg_query($conn, "SELECT * FROM autores");
if (!$result) {
echo "Um erro ororreu.\n";
exit;
}
$arr = pg_fetch_array($result, 0, PGSQL_NUM);
echo $arr[0] . " <- array\n";
$arr = pg_fetch_array($result, 1, PGSQL_ASSOC);
echo $arr["autor"] . " <- array\n";
?>
Nota:
A partir do PHP 4.1.0,
row
tornou-se opcional. A chamada pg_fetch_array() irá incrementar o contador de linha interno em 1.
Veja também pg_fetch_row(), pg_fetch_object() e pg_fetch_result().