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

search for in the

pg_host> <pg_get_pid
[edit] Last updated: Fri, 25 May 2012

view this page in

pg_get_result

(PHP 4 >= 4.2.0, PHP 5)

pg_get_result 非同期クエリの結果を取得する

説明

resource pg_get_result ([ resource $connection ] )

pg_get_result() は、 pg_send_query()pg_send_query_params() あるいは pg_send_execute() で実行した非同期クエリから結果リソースを取得します。

pg_send_query() およびその他の非同期クエリ関数は、 複数のクエリを PostgreSQL サーバーに送信することが可能です。クエリの結果を ひとつずつ取得するには、pg_get_result() を使用します。

パラメータ

connection

PostgreSQL データベースの接続リソース。

返り値

結果 resource を返します。結果がもうない場合に FALSE を返します。

例1 pg_get_result() の例

<?php
  $dbconn 
pg_connect("dbname=publisher") or die("Could not connect");

  if (!
pg_connection_busy($dbconn)) {
      
pg_send_query($dbconn"select * from authors; select count(*) from authors;");
  }
  
  
$res1 pg_get_result($dbconn);
  echo 
"First call to pg_get_result(): $res1\n";
  
$rows1 pg_num_rows($res1);
  echo 
"$res1 has $rows1 records\n\n";
  
  
$res2 pg_get_result($dbconn);
  echo 
"Second call to pg_get_result(): $res2\n";
  
$rows2 pg_num_rows($res2);
  echo 
"$res2 has $rows2 records\n";
?>

上の例の出力は以下となります。

First call to pg_get_result(): Resource id #3
Resource id #3 has 3 records

Second call to pg_get_result(): Resource id #4
Resource id #4 has 1 records

参考



add a note add a note User Contributed Notes pg_get_result
Marko Tiikkaja 25-Oct-2008 05:14
william at 25thandClement dot com said: "There is no way to poll/wait for a notification to come in. .."
Yes, there is. If there is a query in progress, pg_get_result() will block and return the result of that query when it's complete.
william at 25thandClement dot com 27-Jan-2005 03:03
There is no way to poll/wait for a notification to come in. You either have to enter a busy loop or sleep. Both options are horrible. It would be nice for PHP to provide access to PQsocket so one could select() on the socket connection. This is how it's done from C or Perl.

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