(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
pg_end_copy — PostgreSQL バックエンドと同期する
pg_end_copy() は、pg_put_line() によるコピー操作の後で PostgreSQL フロントエンド(通常は Web サーバー プロセス)と PostgreSQL サーバーを同期させます。 pg_end_copy() を実行しなければ、PostgreSQL サーバーが フロントエンドとの同期を失ってしまい、エラーが発生します。
connection
PgSql\Connection クラスのインスタンス。
connection
が null
, の場合、デフォルトの接続を使います。
デフォルトの接続とは、pg_connect() または pg_pconnect() によって確立された直近の接続です。
PHP 8.1.0 以降では、デフォルトの接続を使うことは推奨されなくなりました。
成功した場合に true
を、失敗した場合に false
を返します。
バージョン | 説明 |
---|---|
8.1.0 |
connection は、PgSql\Connection クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、リソース を期待していました。
|
8.0.0 |
connection は、nullable になりました。
|
例1 pg_end_copy() の例
<?php
$conn = pg_pconnect("dbname=foo");
pg_query($conn, "create table bar (a int4, b char(16), d float8)");
pg_query($conn, "copy bar from stdin");
pg_put_line($conn, "3\thello world\t4.5\n");
pg_put_line($conn, "4\tgoodbye world\t7.11\n");
pg_put_line($conn, "\\.\n");
pg_end_copy($conn);
?>