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_NUM
및PGSQL_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.
기타
- pg_fetch_row() - 열거형 배열로 행 가져오기
- pg_fetch_object() - 행을 객체로 가져오기
- pg_fetch_result() - 결과 인스턴스에서 값을 반환합니다.