(PHP 4, PHP 5)
pg_fetch_array — Изважда ред под формата на масив
pg_fetch_array() връща масив, който съответства на извадения ред (запис).
pg_fetch_array() е разширена версия на pg_fetch_row(). В допълнение към съхраняването на данните в резултатния масив с числови индекси (номер на поле), тя също може да съхранява данните и посредством асоциативни индекси (име на поле). По подразбиране тя съхранява и двата вида индекси.
Забележка: Тази функция установява NULL полетата със стойността null; в PHP.
pg_fetch_array() осезаемо НЕ е по-бавна от pg_fetch_row(), но пък е значително по-лесна за използване.
Резултатен ресурс от заявка в PostgreSQL, върнат от pg_query(), pg_query_params(), pg_execute() и др.
Номер на реда, който да бъде извлечен от резултата. Редовете се номерират започвайки от 0 нагоре. Ако се пропусне, ще бъде извлечен следващия ред.
Незадължителен параметър, който контролира начина, по който се индексира връщаният масив. result_type е константа, която може да приема следните стойности: PGSQL_ASSOC, PGSQL_NUM и PGSQL_BOTH. Ако се използва PGSQL_NUM, pg_fetch_array() ще върне масив с числови индекси, с PGSQL_ASSOC - ще върне само асоциативни индекси, докато с PGSQL_BOTH, която е и стойността по подразбиране, функцията ще върне едновременно и числови и асоциативни индекси.
Масив, индексиран числово (започвайки от 0), индексиран асоциативно (по име на поле), или и двете. Всяка стойност в масива е представена като низ (от тип string). Стойностите NULL от базата от данни се връщат като NULL.
Връща FALSE в случаите, когато row надвишава броя редове в множеството, когато няма повече редове, или при каква да е друга грешка.
Версия | Описание |
---|---|
4.1.0 | Параметърът row стана незадължителен. |
4.0.0 | Беше добавен параметъра result_type . |
Example #1 Пример за pg_fetch_array()
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Настъпи грешка.\n";
exit;
}
$result = pg_query($conn, "SELECT author, email FROM authors");
if (!$result) {
echo "Настъпи грешка.\n";
exit;
}
$arr = pg_fetch_array($result, 0, PGSQL_NUM);
echo $arr[0] . " <- Ред 1 Author\n";
echo $arr[1] . " <- Ред 1 E-mail\n";
// От PHP 4.1.0 нататък параметърът за ред е незадължителен; вместо това може да се подаде NULL,
// за да се укаже result_type. Успешните извиквания на pg_fetch_array ще върнат
// следващия ред.
$arr = pg_fetch_array($result, NULL, PGSQL_ASSOC);
echo $arr["author"] . " <- Ред 2 Author\n";
echo $arr["email"] . " <- Ред 2 E-mail\n";
$arr = pg_fetch_array($result);
echo $arr["author"] . " <- Ред 3 Author\n";
echo $arr[1] . " <- Ред 3 E-mail\n";
?>