繁体   English   中英

“ mysqli_query()或die(mysqli_error())”是一个好习惯吗?

[英]Is “mysqli_query() or die(mysqli_error())” a good practice?

因此,我通常使用这种结构在php上执行查询,但是前一天我被指出这可能是一个不好的做法。

谁能告诉我为什么这是错误的,并给我一些应该怎么做的提示? 我真的很想学习和改进我的代码。

提前致谢。

这种做法太糟糕了。 从上个世纪的代码编写方式来看,这是很糟糕的遗传。

相反,您必须连接代码之前添加此行

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

它将使您无需为每个mysql调用编写额外的代码,因为它会使mysqli在发生错误时自动引发Exception

尽管异常本身比常规错误要好得多,但可以捕获并优雅地处理它。 但是,如果没有发现,它将转换为错误,这没关系-因为常规错误取决于站点范围的设置,因此可以在屏幕上显示或记录。 同样,无需编写一行额外的代码。

在开发过程中,只需将display_errors设置为on ,您将在发生错误时立即看到所有错误。
虽然上线的站点, display_errors有被关off ,但log_errors必须on代替-它会让你异常记录,以备将来参考。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM