Funkcje PostgreSQL
PHP Manual

pg_fetch_array

(PHP 4, PHP 5)

pg_fetch_arrayPobiera wiersz jako tablicę

Opis

array pg_fetch_array ( resource $wynik [, int $wiersz [, int $typ_wyniku = PGSQL_BOTH ]] )

pg_fetch_array() zwraca tablicę zawierającą dane z pobranego wiersza (rekordu).

pg_fetch_array() jest rozszerzeną wersją pg_fetch_row(). Oprócz zapisywania danych w tablicy wyników indeksowanej numerycznie, zapisuje je też używając indeksów przyporządkowujących (asocjacyjnych) tej tablicy, nazwy kolumn traktując jako klucze. Domyślnie zapisywane są oba rodzaje indeksów.

Informacja: Ta funkcja ustala wartość pól NULL na NULL.

pg_fetch_array() NIE jest znacznie wolniejsze, niż używanie pg_fetch_row(), oraz jest zdecydowanie łatwiejsze do użycia.

Parametry

wynik

Identyfikator wyniku zapytania PostgreSQL, zwrócony przez pg_query(), pg_query_params() lub pg_execute() (między innymi).

wiersz

Numer wiersza w wyniku do pobrania. Wiersze są numerowane od zera w górę. Jeśli jest pominięty albo wynosi NULL, pobrany zostanie kolejny wiersz.

typ_wyniku

Opcjonalny parametr kontrolujący w jaki sposób zwrócona tablica (ang. array) jest indeksowana. typ_wyniku jest stałą i może przyjąć następujące wartości: PGSQL_ASSOC, PGSQL_NUM oraz PGSQL_BOTH. Używając PGSQL_NUM, pg_fetch_array() zwróci tablicę z indeksami numerycznymi, użycie PGSQL_ASSOC zwróci wyłącznie indeksy asocjacyjne podczas, gdy PGSQL_BOTH, wartość domyślna, zwróci oba rodzaje indeksów - numeryczne i asocjacyjne.

Zwracane wartości

Tablica (ang. array) indeksowana numerycznie (zaczynając od zera) lub asocjacyjnie (indeksowana przez nazwy kolumn), lub tak i tak. Każda wartość w tablicy (ang. array) jest przedstawiona jako łańcuch (ang. string). Wartości NULL z bazy danych są zwracane jako NULL.

FALSE zostanie zwrócone jeśli wiersz przekracza ilość wierszy w całym zbiorze, nie ma więcej wierszy, lub dowolnym innym błędzie.

Rejestr zmian

Wersja Opis
4.1.0 Parametr wiersz stał się opcjonalnym.

Przykłady

Przykład #1 pg_fetch_array() - przykład

<?php 

$polaczenie_z_baza 
pg_pconnect("dbname=wydawca");
if (!
$polaczenie_z_baza) {
  echo 
"Wystąpił błąd.\n";
  exit;
}

$wynik pg_query($polaczenie_z_baza"SELECT autor, email FROM autorzy");
if (!
$wynik) {
  echo 
"Wystąpił błąd.\n";
  exit;
}

$tab pg_fetch_array($wynik0PGSQL_NUM);
echo 
$tab[0] . " <- Wiersz 1 Autor\n";
echo 
$tab[1] . " <- Wiersz 1 E-mail\n";

// Jako, że w PHP 4.1.0, parametr wiersz jest opcjonalny; można podać w zamian NULL,
// by podać typ_wyniku.  Kolejne wywołanie funkcji pg_fetch_array zwróci
// następny wiersz.
$tab pg_fetch_array ($wynik1PGSQL_ASSOC);
echo 
$tab["autor"] . " <- Wiersz 2 Autor\n";
echo 
$tab["email"] . " <- Wiersz 2 E-mail\n";

$tab pg_fetch_array($wynik);
echo 
$tab["autor"] . " <- Wiersz 3 Autor\n";
echo 
$tab[1] . " <- Wiersz 3 E-mail\n";

?>

Zobacz też:


Funkcje PostgreSQL
PHP Manual