所以我通常使用这个结构在php上执行我的查询,但有一天我被指出这可能是一个不好的做法。
有人可以告诉我为什么这是错的,并给我一些关于我该怎么做的提示? 我真的很想学习和改进我的代码。
提前致谢。
答案 0 :(得分:3)
这种做法很糟糕。从上个世纪编写代码的方式来看,它是一种糟糕的遗传。
相反,您必须在连接代码
之前添加此行mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
它将减轻您为每个mysql调用编写额外代码的需要,因为它会使mysqli在出现错误时自动抛出Exception
。
虽然异常本身比常规错误更好,因为它可以被捕获并且优雅地处理。然而,如果没有被捕获,它将被转换为错误,这也是可以的 - 因为常规错误,取决于站点范围的设置,可以在屏幕上显示或记录。 再次无需编写一行额外代码。
在开发过程中,只需display_errors
设置on
,您就会在发生错误时看到所有错误。
在实际网站上,display_errors
必须转为off
,但log_errors
必须为on
- 而且会记录您的异常,以供将来参考。