感觉PHP中的try{}catch{}结构像鸡肋
作者:一想千开 日期:2009-07-19
引用内容PHP 5 添加了类似于其它语言的异常处理模块。在 PHP 代码中所产生的异常可被 throw 语句抛出并被 catch 语句捕获。需要进行异常处理的代码都必须放入 try 代码块内,以便捕获可能存在的异常。每一个 try 至少要有一个与之对应的 catch。使用多个 catch 可以捕获不同的类所产生的异常。当 try 代码块不再抛出异常或者找不到 catch 能匹配所抛出的异常时,PHP 代码就会在跳转到最后一个 catch 的后面继续执行。当然,PHP 允许在 catch 代码块内再次抛出(throw)异常。
但问题是,PHP压根就不会自己产生异常,至于是不是出了异常,仍然需要我们自己判断,如果有,需要我们自己用throw new Exception语句抛出一个异常,然后再用catch去捕获……
似乎有点没事找事的味道:本来没有麻烦,我们去自己去制造一个麻烦出来,然后再自己把麻烦解决掉。
且不说它没事找事,既然我们都知道异常了,为何却要抛一个异常出去然后再捕获?知道异常了直接提示用户是不是更好呢?
我的习惯是尽量不把WEB服务端的错误信息展示给用户,尽可能的考虑到所有可能会出现错误的地方,然后,在即将发生错误的时候,用一种友好的方式提示用户,而不是把吃果果的异常信息或者HTTP500错误页面展示给用户。
评论: 0 | 引用: 0 | 查看次数: -
发表评论
上一篇
下一篇


文章来自:
Tags: