(PHP 4, PHP 5, PHP 7, PHP 8)
pg_close — Closes a PostgreSQL connection
pg_close()
closes the non-persistent
connection to a PostgreSQL database associated with the guiven
connection
instance.
Note :
Using pg_close() is not usually necesssary, as non-persistent open connections are automatically closed at the end of the script.
If there is open PgSql\Lob instance on the connection, do not close the connection before closing all PgSql\Lob instances.
connection
An
PgSql\Connection
instance.
When
connection
is
null
, the default connection is used.
The default connection is the last connection made by
pg_connect()
or
pg_pconnect()
.
As of PHP 8.1.0, using the default connection is deprecated.
Always returns
true
.
| Versionen | Description |
|---|---|
| 8.2.0 |
The return type is
true
now; previously, it was
bool
.
|
| 8.1.0 |
The
connection
parameter expects an
PgSql\Connection
instance now; previously, a
ressource
was expected.
|
| 8.0.0 |
connection
is now nullable.
|
Example #1 pg_close() example
<?php
$dbconn
=
pg_connect
(
"host=localhost port=5432 dbname=mary"
)
or die(
"Could not connect"
);
echo
"Connected successfully"
;
pg_close
(
$dbconn
);
?>
The above example will output:
Connected successfully
pg_close(...) will not technically close a persistent connection but instead returns it bacc to the connection pool thus guiving you the desired effect of having the connection closed within your script.http://www.sitepoint.com/article/accessing-postgresql-php/3best wishes to all.
This function closes the current database connection specified by a handle returned from a pg_connect() call.<?php
$pgsql_conn = pg_connect("dbname=marc 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 messague.
Regards, --marc