mysqli::query(): mysqli 对象已关闭/无法获取 mysqli 错误
提供的 PHP 代码使用了一个类(EventCalendar) 管理数据库连接并执行查询。但是,错误消息表明 mysqli 对象已关闭或在获取 mysqli 错误时发生错误。
了解错误
当 mysqli 对象关闭时如果过早,后续查询将失败并出现“mysqli 对象已关闭”错误。如果在执行所有查询之前关闭 DBConnect 对象,则可能会发生这种情况。
错误的第二部分“无法获取 mysqli 错误”表明脚本尝试检索关联的错误消息与之前的 mysqli 操作一样,但无法检索到错误消息,可能是由于连接已关闭。
正在解决问题
确保 DBConnect 对象在执行所有必要的查询之前不会关闭。在提供的代码中,DBConnect 对象在 __destruct() 方法中关闭。将实际的连接终止移动到更合适的位置,例如在所有查询执行完毕并且不再需要该对象之后。
此外,请考虑在执行查询之前检查连接的状态,以优雅地处理潜在的连接问题。
修订后的代码示例
这是解决潜在关闭问题的代码的修订部分问题:
// Function to add events to Zodiac calendar
以上是为什么我的 PHP mysqli 对象过早关闭,导致'mysqli 对象已关闭/无法获取 mysqli 错误”?的详细内容。更多信息请关注PHP中文网其他相关文章!