PHP Conference Japan 2024

pg_close

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

pg_close关闭 PostgreSQL 连接

描述

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 实例;以前期望一个 resource
8.0.0 connection 现在可以为空。

示例

示例 #1 pg_close() 示例

<?php
$dbconn
= pg_connect("host=localhost port=5432 dbname=mary")
or die(
"无法连接");
echo
"连接成功";
pg_close($dbconn);
?>

以上示例将输出

Connected successfully

参见

添加注释

用户贡献的注释 2 条注释

6
amays
19 年前
pg_close(...) 不会从技术上关闭持久连接,而是将其返回到连接池,从而实现您在脚本中关闭连接的预期效果。

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

祝大家一切顺利。
2
mark at redbrick dot dcu dot ie
21 年前
此函数关闭由 pg_connect() 调用返回的句柄指定的当前数据库连接。

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

if (
$pgsql_conn) {
print
"成功连接到: " . pg_host($pgsql_conn) . "<br/>\n";
} else {
print
pg_last_error($pgsql_conn);
exit;
}

// 在此处执行数据库操作

if(!pg_close($pgsql_conn)) {
print
"未能关闭与 " . pg_host($pgsql_conn) . ": " .
pg_last_error($pgsql_conn) . "<br/>\n";
} else {
print
"已成功断开与数据库的连接";
}
?>

当然,您通常不会打印消息。

此致,--mark
To Top