禁用mysql错误

3pvhb19x  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(270)

有没有什么方法可以防止mysql错误(如果发生)出现在客户端上,并将它们记录在某个地方?
注1:我不使用任何框架,只使用带有pdo灭绝和mysql的原生php。
注2:此代码将停止php错误,而不是mysql。

ini_set('display_errors', 0);
ini_set("display_startup_errors", 0);
error_reporting(0);

例子:
禁用错误,如

SQLSTATE[HY000] [1045] Access denied for user ..
g6ll5ycj

g6ll5ycj1#

对于非php错误,应用程序(程序员)负责获取并显示/记录错误。因此,对于您的特定示例,不要显示它,而是记录它:

//instead of displaying
if (!$link) {
    die(mysqli_connect_error());
}

//log it
if (!$link) {
    error_log(mysqli_connect_error());
}

您还可以触发符合错误报告设置的错误:

if (!$link) {
    trigger_error(mysqli_connect_error(), E_USER_ERROR);
}

相关问题