小心使用比较运算符是不够的
<?php
if (pg_connection_status($link)===PGSQL_CONNECTION_BAD)
reconnect($link);
?>
当 $link 为 null 时,不会触发重新连接。
手册是错误的,有三个返回值:PGSQL_CONNECTION_OK、PGSQL_CONNECTION_BAD、null
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_connection_status — 获取连接状态
pg_connection_status() 返回指定 connection
的状态。
版本 | 描述 |
---|---|
8.1.0 | 现在 connection 参数期望一个 PgSql\Connection 实例;以前,期望一个 资源。 |
示例 #1 pg_connection_status() 示例
<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
$stat = pg_connection_status($dbconn);
if ($stat === PGSQL_CONNECTION_OK) {
echo 'Connection status ok';
} else {
echo 'Connection status bad';
}
?>
小心使用比较运算符是不够的
<?php
if (pg_connection_status($link)===PGSQL_CONNECTION_BAD)
reconnect($link);
?>
当 $link 为 null 时,不会触发重新连接。
手册是错误的,有三个返回值:PGSQL_CONNECTION_OK、PGSQL_CONNECTION_BAD、null
我认为 zytox 是错误的,至少在 PHP 5.0.4 中是这样。
它返回 null,但您必须小心使用比较运算符。
例如
<?php
unset($null);
if (pg_connection_status($null)===PGSQL_CONNECTION_OK)
echo 'this is not called';
if (pg_connection_status($null)==PGSQL_CONNECTION_OK)
echo 'this is called because NULL==0 is true';
?>