pg_fetch_array

(PHP 4, PHP 5, PHP 7, PHP 8)

pg_fetch_array - 배열에서 행을 가져옵니다.


설명

pg_fetch_array(PgSql\Result $result, ?int $row = null, int $mode = PGSQL_BOTH): array|false

pg_fetch_array()는 가져온 행(레코드)에 해당하는 배열을 반환합니다.

pg_fetch_array()pg_fetch_row()의 확장 버전입니다. 숫자 인덱스(필드 번호)의 데이터를 결과 배열에 저장하는 것 외에도 연관 인덱스(필드 이름)를 사용하여 데이터를 저장할 수도 있습니다. 기본적으로 두 인덱스를 모두 저장합니다.

메모: 이 함수는 NULL 필드를 PHP null 값으로 설정합니다.

pg_fetch_array()pg_fetch_row()를 사용하는 것보다 훨씬 느리지 않고 사용하기 훨씬 쉽습니다.


매개변수

result
pg_query(), pg_query_params() 또는 pg_execute()(특히)에 의해 반환된 PgSql\Result 인스턴스.
row
가져올 결과의 행 번호입니다. 행은 0부터 번호가 매겨집니다. 생략하거나 null이면 다음 행을 가져옵니다.
mode
반환된 배열이 인덱싱되는 방식을 제어하는 ​​선택적 매개변수입니다. mode는 상수이며 PGSQL_ASSOC, PGSQL_NUMPGSQL_BOTH 값을 사용할 수 있습니다. PGSQL_NUM을 사용하면 pg_fetch_all()은 숫자 인덱스가 있는 배열을 반환하고 PGSQL_ASSOC를 사용하면 연관 인덱스만 반환하지만 기본값인 PGSQL_BOTH는 숫자 인덱스와 연관 인덱스를 모두 반환합니다.

반환 값

숫자로 인덱싱된(0으로 시작) 또는 연관적으로 인덱싱된(필드 이름으로 인덱싱된) 배열입니다. 배열의 각 값은 문자열로 표시됩니다. 데이터베이스 NULL 값은 null로 반환됩니다.

row이 집합의 행 수를 초과하거나 행이 더 이상 없거나 다른 오류가 발생하면 false가 반환됩니다. SELECT 이외의 쿼리 결과에서 가져오는 것도 false를 반환합니다.


변경 로그

버전 설명
8.1.0 result 매개변수는 이제 PgSql\Result 인스턴스를 예상합니다. 이전에는 resource가 필요했습니다.

Examples

예제 #1 pg_fetch_array() 예제

                  
<?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";

?>
                  
                

위의 예는 다음을 출력합니다.

1 tuples are affected.
                

기타