
pg_fetch_array 함수는 PostgreSQL에서 결과 집합의 행을 배열로 반환하는 함수입니다.
배열 타입은 ASSOC, ARRAY, BOTH, OBJ 등이 있습니다. ASSOC 타입을 사용할 때, 데이터베이스의 컬럼 이름을 키로 사용하여 결과를 반환할 수 있습니다. 컬럼 이름이 없는 경우에는 키를 지정하지 않아도 데이터가 반환됩니다.
예를 들어, 다음과 같은 SQL 문이 있다고 가정해 보겠습니다.
#hostingforum.kr
sql
SELECT id, name, age FROM users;
이 경우, ASSOC 타입을 사용하여 결과를 반환할 수 있습니다.
#hostingforum.kr
php
$result = pg_query("SELECT id, name, age FROM users;");
$row = pg_fetch_array($result, PGSQL_ASSOC);
print_r($row);
이 코드는 다음과 같은 결과를 반환할 것입니다.
#hostingforum.kr
php
Array
(
[id] => 1
[name] => John
[age] => 25
)
배열 타입을 사용할 때, 컬럼 이름이 없는 경우에는 키를 지정하지 않아도 데이터가 반환됩니다.
#hostingforum.kr
sql
SELECT id, name, age FROM users;
이 경우, ASSOC 타입을 사용하여 결과를 반환할 수 있습니다.
#hostingforum.kr
php
$result = pg_query("SELECT id, name, age FROM users;");
$row = pg_fetch_array($result, PGSQL_ASSOC);
print_r($row);
이 코드는 다음과 같은 결과를 반환할 것입니다.
#hostingforum.kr
php
Array
(
[0] => 1
[1] => John
[2] => 25
)
이 경우, 컬럼 이름이 없기 때문에 키를 지정하지 않아도 데이터가 반환됩니다.
pg_fetch_array 함수의 두 번째 인수는 시작 행 번호를 지정하는 것입니다. 시작 행 번호가 0이면 첫 번째 행부터 결과를 반환할 수 있습니다. 그러나 시작 행 번호가 음수인 경우에는 결과가 반환되지 않습니다.
예를 들어, 다음과 같은 SQL 문이 있다고 가정해 보겠습니다.
#hostingforum.kr
sql
SELECT id, name, age FROM users;
이 경우, pg_fetch_array 함수의 두 번째 인수에 0을 지정하여 첫 번째 행부터 결과를 반환할 수 있습니다.
#hostingforum.kr
php
$result = pg_query("SELECT id, name, age FROM users;");
$row = pg_fetch_array($result, 0, PGSQL_ASSOC);
print_r($row);
이 코드는 다음과 같은 결과를 반환할 것입니다.
#hostingforum.kr
php
Array
(
[id] => 1
[name] => John
[age] => 25
)
그러나 pg_fetch_array 함수의 두 번째 인수에 음수인 -1을 지정하면 결과가 반환되지 않습니다.
#hostingforum.kr
php
$result = pg_query("SELECT id, name, age FROM users;");
$row = pg_fetch_array($result, -1, PGSQL_ASSOC);
print_r($row);
이 코드는 다음과 같은 결과를 반환할 것입니다.
#hostingforum.kr
php
Array
(
)
이 경우, 결과가 반환되지 않습니다.
pg_fetch_array 함수를 사용하여 결과 집합의 행을 배열로 반환하는 방법은 다음과 같습니다.
1. pg_query 함수를 사용하여 SQL 문을 실행합니다.
2. pg_fetch_array 함수를 사용하여 결과 집합의 행을 배열로 반환합니다.
3. 배열 타입을 지정하여 컬럼 이름을 키로 사용하거나 키를 지정하지 않습니다.
4. 시작 행 번호를 지정하여 첫 번째 행부터 결과를 반환합니다.
5. 결과를 반환받은 배열을 사용하여 필요한 작업을 수행합니다.
2025-07-02 05:59