小心比较运算符还不够
<?php
if (pg_connection_status($link)===PGSQL_CONNECTION_BAD)
reconnect($link);
?>
当 $link 为空时,重新连接不会被触发。
手册是错误的,有三个返回值:PGSQL_CONNECTION_OK、PGSQL_CONNECTION_BAD、空
(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 为空时,重新连接不会被触发。
手册是错误的,有三个返回值:PGSQL_CONNECTION_OK、PGSQL_CONNECTION_BAD、空
我认为 zytox 是错误的,至少在 PHP 5.0.4 中是错误的。
它返回空,但您必须小心使用比较运算符。
例如
<?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';
?>