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


Prevent Error on mysql_connect() - Access denied

我有这样的代码片段:

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

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

我确实需要这种语法,但是什么都不适合我。

我尝试了$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总是打印连接失败的错误消息。如果失败,我只想返回false

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

使用@来静音错误消息不是一个好的解决方案

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

见:http://php.net/manual/en/language.operators.errorcontrol.php

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

但是您可以通过使用@:

前缀来屏蔽mysql_connect生成的警告。

@mysql_connect()

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

文档