pg_close

(PHP 4, PHP 5, PHP 7, PHP 8)

pg_closePostgreSQL 接続をクローズする

説明

pg_close(?PgSql\Connection $connection = null): true

pg_close() は、 connection インスタンスで指定した PostgreSQL データベースへの持続的でない接続を閉じます。

注意:

持続的でない接続はスクリプトの実行終了時に自動的にクローズされるため、 pg_close() は通常は必要ありません。

接続の中でオープンされている PgSql\Lob のインスタンスが存在する場合、すべての PgSql\Lob のインスタンスを クローズするまで接続を閉じないでください。

パラメータ

connection

PgSql\Connection クラスのインスタンス。 connectionnull, の場合、デフォルトの接続を使います。 デフォルトの接続とは、pg_connect() または pg_pconnect() によって確立された直近の接続です。

警告

PHP 8.1.0 以降では、デフォルトの接続を使うことは推奨されなくなりました。

戻り値

常に true を返します。

変更履歴

バージョン 説明
8.2.0 戻り値の型が、true になりました。これより前のバージョンでは、bool でした。
8.1.0 connection は、PgSql\Connection クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソース を期待していました。
8.0.0 connection は、nullable になりました。

例1 pg_close() の例

<?php
$dbconn
= pg_connect("host=localhost port=5432 dbname=mary")
or die(
"Could not connect");
echo
"Connected successfully";
pg_close($dbconn);
?>

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

Connected successfully

参考

add a note add a note

User Contributed Notes 2 notes

up
2
amays
19 years ago
pg_close(...) will not technically close a persistent connection but instead returns it back to the connection pool thus giving you the desired effect of having the connection closed within your script.

http://www.sitepoint.com/article/accessing-postgresql-php/3

best wishes to all.
up
-1
mark at redbrick dot dcu dot ie
21 years ago
This function closes the current database connection specified by a handle returned from a pg_connect() call.

<?php
    $pgsql_conn
= pg_connect("dbname=mark host=localhost");

    if (
$pgsql_conn) {
        print
"Successfully connected to: " . pg_host($pgsql_conn) . "<br/>\n";
    } else {
        print
pg_last_error($pgsql_conn);
        exit;
    }

   
// Do database stuff here.

   
if(!pg_close($pgsql_conn)) {
        print
"Failed to close connection to " . pg_host($pgsql_conn) . ": " .
      
pg_last_error($pgsql_conn) . "<br/>\n";
    } else {
        print
"Successfully disconnected from database";
    }
?>

Of course you normally wouldn't print a message. 

Regards, --mark
To Top