防止mysql_connect()出错 - 访问被拒绝

时间:2011-09-20 12:39:48

标签: php mysql error-handling mysql-connect

我有这段代码:

$conn = mysql_connect($host, $usr, $pwd);

如何在MySQL访问被拒绝时阻止PHP打印错误消息?

我需要这种语法,但对我来说没有任何作用。

我尝试了$conn = mysql_connect($host, $usr, $pwd) or false;$conn = mysql_connect($host, $usr, $pwd) || false;以及以下内容:

try {
    $conn = mysql_connect($host, $usr, $pwd);

    if(!$conn) {
        throw new Exception('Failed');
    }
} catch(Exception $e) {
    // ...
}

PHP始终会输出连接失败的错误消息。但是如果它失败了我只想返回假。

4 个答案:

答案 0 :(得分:10)

不应在生产服务器上激活打印错误。考虑更改php.ini配置以记录错误而不是显示它。

使用@ to silent错误消息不是一个好的解决方案。

答案 1 :(得分:6)

我不知道你为什么这么想,但你可以添加一个@来压制php错误吗?

请参阅:http://php.net/manual/en/language.operators.errorcontrol.php

答案 2 :(得分:3)

你不应该在PHP 5中使用mysql_connect,因为它现在已经弃用了mysqli和PDO。

但你可以通过加mysql_connect前缀来消除@生成的警告:

@mysql_connect()

答案 3 :(得分:0)

@可以抑制错误。并设置错误报告error_reporting(0);以关闭所有错误。另请查看mysqli

Docs