downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

pg_fetch_all> <pg_execute
[edit] Last updated: Fri, 25 May 2012

view this page in

pg_fetch_all_columns

(PHP 5 >= 5.1.0)

pg_fetch_all_columnsFetches all rows in a particular result column as an array

Description

array pg_fetch_all_columns ( resource $result [, int $column = 0 ] )

pg_fetch_all_columns() returns an array that contains all rows (records) in a particular column of the result resource.

Note: This function sets NULL fields to the PHP NULL value.

Parameters

result

PostgreSQL query result resource, returned by pg_query(), pg_query_params() or pg_execute() (among others).

column

Column number, zero-based, to be retrieved from the result resource. Defaults to the first column if not specified.

Return Values

An array with all values in the result column.

FALSE is returned if column is larger than the number of columns in the result, or on any other error.

Examples

Example #1 pg_fetch_all_columns() example

<?php 
$conn 
pg_pconnect("dbname=publisher");
if (!
$conn) {
  echo 
"An error occured.\n";
  exit;
}

$result pg_query($conn"SELECT title, name, address FROM authors");
if (!
$result) {
  echo 
"An error occured.\n";
  exit;
}

// Get an array of all author names
$arr pg_fetch_all_columns($result1);

var_dump($arr);

?>

See Also



add a note add a note User Contributed Notes pg_fetch_all_columns
strata_ranger at hotmail dot com 04-Apr-2009 12:43
Unfortunate that pg_fetch_all_columns() doesn't support fetching a column by its name -- if you want to do that, you'll need to use pg_field_num() as an intermediary:

For example:

<?php

if ($foo)
 
$cols = "email_address";

else
 
$cols = "last_name, middle_init";

$result = pg_query("Select first_name, $info, birthday from users_table");

// Problem -- does column #2 refer to the 'birthday' or 'middle_init' field?
$array = pg_fetch_all_columns($result, 2);

// Won't work, must use a column number instead of its name
$array = pg_fetch_all_columns($result, 'birthday');

// Works
$array = pg_fetch_all_columns($result, pg_field_num($result, 'birthday'));

?>
massiv at nerdshack dot com 22-Oct-2008 12:56
php 4 equivalent:

<?php
$conn
= pg_pconnect("dbname=publisher");
if (!
$conn) {
  echo
"An error occured.\n";
  exit;
}

$result = pg_query($conn, "SELECT title, name, address FROM authors");
if (!
$result) {
  echo
"An error occured.\n";
  exit;
}

// Get an array of all author names
$arr = array();
while (
$line = pg_fetch_array($result)) {
 
array_push($arr, $line['name']);
}

var_dump($arr);

?>

 
show source | credits | sitemap | contact | advertising | mirror sites