失败时pg_connect不返回false

时间:2015-10-28 08:28:15

标签: php postgresql

我正在尝试使用php中的pg_connect连接到postgres数据库。如果我提供了错误的证书来进行测试,则不会返回false。

而是返回错误

说明

pg_connect():无法连接到PostgreSQL服务器:无法连接到服务器:拒绝连接

3 个答案:

答案 0 :(得分:1)

尝试这可能会有所帮助

 if(isset($yourobject)){
   //YourCode
 }

答案 1 :(得分:1)

我认为这里的问题是你试图打印结果,但是打印false值什么都不打印,所以你只是看到了pg_connect生成的警告。

func3

如果要查看变量的实际值,请改用var_dump():

print(false); //prints nothing

答案 2 :(得分:0)

正如有人在评论中所说,你应该在这里查看:how to catch pg_connect() function error?

您可以使用@隐藏错误并执行以下操作:

<?php
$db = @pg_connect("...") or die("failed");
if( $db == "failed"){
  // false
}
else {
  // true
}
?>