pg_fetch_array
(PHP 4, PHP 5, PHP 7, PHP 8)
pg_fetch_array — Busca uma linha como um array
Descrição
pg_fetch_array() retorna um array que corresponde à linha buscada (registro).
pg_fetch_array() é uma versão estendida de pg_fetch_row(). Além de armazenar os dados nos índices numéricos (número do campo) no array de resultados, também pode armazenar os dados usando índices associativos (nome do campo). Ele armazena ambos os índices por padrão.
Note: Esta função define campos NULL como o valor
null
do PHP.
pg_fetch_array() NÃO é significativamente mais lento do que usar pg_fetch_row() e é significativamente mais fácil de usar.
Parâmetros
result
-
Uma instância de PgSql\Result, retornada por pg_query(), pg_query_params() ou pg_execute() (entre outras).
row
-
Número da linha no resultado a ser buscado. As linhas são numeradas de 0 para cima. Se omitido ou
null
, a próxima linha será buscada. mode
-
Um parâmetro opcional que controla como o array retornado será indexado.
mode
é uma constante e pode assumir os seguintes valores:PGSQL_ASSOC
,PGSQL_NUM
ePGSQL_BOTH
. UsandoPGSQL_NUM
, a função retornará um array com índices numéricos, usandoPGSQL_ASSOC
ela retornará apenas índices associativos enquantoPGSQL_BOTH
retornará índices numéricos e associativos.
Valor Retornado
Um array indexado numericamente (começando com 0) ou
associativamente (indexado pelo nome do campo), ou ambos.
Cada valor no array é representado como uma
string. Os valores NULL
do banco de dados são retornados como null
.
false
é retornado se row
exceder o número
de linhas no conjunto, não houver mais linhas ou em qualquer outro erro.
Buscar o resultado de uma consulta diferente de SELECT também retornará false
.
Registro de Alterações
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro result agora espera uma instância de PgSql\Result;
anteriormente, um resource era esperado.
|
Exemplos
Example #1 Exemplo de pg_fetch_array()
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Ocorreu um erro.\n";
exit;
}
$result = pg_query($conn, "SELECT author, email FROM authors");
if (!$result) {
echo "Ocorreu um erro.\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";
// O parâmetro linha é opcional; NULL pode ser passado em vez disso,
// para passar um result_type. Chamadas sucessivas para pg_fetch_array
// retornarão a próxima linha.
$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";
?>
Veja Também
- pg_fetch_row() - Obtém uma linha como um array enumerado
- pg_fetch_object() - Busca uma linha como um objeto
- pg_fetch_result() - Retorna valores de uma instância de resultado