从 PHP 8.1 开始,MySQLi 提供了一种不同的错误处理方法。它不是通过传统的 if (!$conn) 条件进行手动错误检测,而是本机引发异常,从而消除了此类检查的需要。
更新的方法简化了错误处理;无需手动进行 if 检查。相反,请根据特定场景的需要使用 try..catch 块,例如测试用户提供的凭据或实施备份策略。
不建议且应该自定义错误消息从代码中删除。为了安全和用户体验,保持一致性和处理错误至关重要。
要呈现用户友好的错误页面,请配置错误处理程序。使用 set_exception_handler() 拦截异常并输出可自定义的错误消息,具体取决于是否启用了 display_errors。
对于不可恢复的服务器错误,应使用 HTTP 500 代码。这向客户端表明服务器遇到问题,这是此类情况的标准做法。
要防止数据库密码出现在堆栈跟踪中,请升级到 PHP 8.2 或之后。它掩盖了堆栈跟踪中的敏感信息,从而增强了安全性。
以上是为什么 PHP 8.1 中 mysqli_connect 失败时我的自定义错误消息不显示?的详细内容。更多信息请关注PHP中文网其他相关文章!