(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_send_execute — 指定したパラメータでプリペアドステートメントを実行するリクエストを 送信し、その結果を待たない
指定したパラメータでプリペアドステートメントを実行するリクエストを 送信し、その結果を待ちません。
これは pg_send_query_params() と似ています。 しかし、実行するコマンドは指定したクエリ文字列で決まるのではなく 事前に準備されたステートメントの名前で決まります。関数のパラメータは pg_execute() と同じように処理されます。 pg_execute() と同様に、7.4 より前のバージョンの PostgreSQL では動作しません。
connectionPgSql\Connection クラスのインスタンス。
statement_name
       実行するプリペアドステートメントの名前。"" が指定された場合は
       無名ステートメントが実行されます。名前は、事前に
       pg_prepare()・pg_send_prepare()
       あるいは PREPARE SQL コマンドで準備されたものである
       必要があります。
      
paramsプリペアドステートメント中の $1、$2 などのプレースホルダを 置き換えるパラメータの配列。配列の要素数はプレースホルダの 数と一致する必要があります。
   成功した場合に true 、失敗した場合に 0 を返します。
   クエリの結果を確認するには pg_get_result() を使用します。
  
| バージョン | 説明 | 
|---|---|
| 8.1.0 | connectionは、PgSql\Connection クラスのインスタンスを期待するようになりました。
  これより前のバージョンでは、resource を期待していました。 | 
例1 pg_send_execute() の使用法
<?php
  $dbconn = pg_connect("dbname=publisher") or die("Could not connect");
  // 実行するクエリを準備する
  if (!pg_connection_busy($dbconn)) {
    pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
    $res1 = pg_get_result($dbconn);
  }
  // プリペアドクエリを実行する。 文字列 "Joe's Widgets" は
  // エスケープの必要がないことに注意
  if (!pg_connection_busy($dbconn)) {
    pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
    $res2 = pg_get_result($dbconn);
  }
  
  // 同じプリペアドクエリを異なるパラメータで実行する
  if (!pg_connection_busy($dbconn)) {
    pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
    $res3 = pg_get_result($dbconn);
  }
  
?>
