Php 何时使用Try-Catch块
好的,这可能是一个很难回答的问题,但我发现关于这个问题的PHP文档和一些互联网搜索并没有给我任何想法 什么时候应该使用try-catch块来改进我的应用程序 我读到有人说我们应该使用try-catch块来防止致命错误。 我读到其他人说我们应该只在意外错误上使用它(等等什么?意外?如果它们是意外错误,我如何用try-catch阻止它们?我应该将所有应用程序代码放在try块中吗?)。 其他人只是说try-catch块应该到处使用,因为它们也可以扩展(扩展异常类)。 最后有人说PHP try-catch块完全没有用,因为它们的实现非常糟糕。(关于这一点,我发现了一个关于性能的非常好的问题)Php 何时使用Try-Catch块,php,try-catch,Php,Try Catch,好的,这可能是一个很难回答的问题,但我发现关于这个问题的PHP文档和一些互联网搜索并没有给我任何想法 什么时候应该使用try-catch块来改进我的应用程序 我读到有人说我们应该使用try-catch块来防止致命错误。 我读到其他人说我们应该只在意外错误上使用它(等等什么?意外?如果它们是意外错误,我如何用try-catch阻止它们?我应该将所有应用程序代码放在try块中吗?)。 其他人只是说try-catch块应该到处使用,因为它们也可以扩展(扩展异常类)。 最后有人说PHP try-catc
在我看来,这个话题非常奇怪和混乱。有人能给我点灯吗?你不能到处都放试抓块 然而,在应用程序测试期间,生成的异常应该提醒您需要尝试捕获的地方。这就是您应该对应用程序/代码进行彻底测试的原因之一 如果你看到一个你认为需要它的地方,我会放一个进去
编辑:好的,你可以把它们放在任何地方,但是你需要知道如何把它们放在你的代码中。不同的人会告诉你不同的事情。但这就是我的想法,特别是在web应用程序的情况下 您的整个页面应该位于一个try/catch中,向用户显示一条错误消息。错误消息不应该详细告诉用户发生了什么,因为这是一个安全问题。它应该将有关错误的信息记录到日志文件中 另一种情况是,在正常的事务运作中可能会出现问题。PHP不是很高兴,所以这种情况可能不会经常发生。基本上,如果您遇到一个函数,当它失败时抛出一个异常,您可以捕获该异常并在这种情况下执行其他操作 一般来说,你的问题就像问你如何使用锤子来提高房子的质量。使用异常帮助您实现特定行为。不要寻找使用异常的位置 在我看来,这个话题非常奇怪和混乱。有人能给我点灯吗 当然。我不是PHP用户,但在使用过ActionScript、Java和JavaScript中的try/catch之后,我可能会有一些见解。但是请记住,不同的语言和平台鼓励对try/catch进行不同的使用。也就是说 我唯一建议使用try/catch的时候是,如果您使用的是本机语言函数
所以。。。这可能是一个有点宗教色彩的问题,我相信人们会不同意我的观点,但从我的角度来看,这些是我多年来在尝试/捕获方面学到的经验。我认为这只是偏好的问题,但从我的经验来看,我鼓励你尽可能多地使用它们 在我们目前正在开发的应用程序中(如果有必要的话,使用Zend Framework),我们使用一个try..catch块来捕获整个应用程序中显示给用户的所有异常,例如,错误500s和异常记录,并将更多信息记录到数据库中。一、 就个人而言,在PHP应用程序中喜欢这种方法,因为例外情况是扩展的