PHP,异常处理之“异常产生的开销”

虽然异常机制的功能非常强大,但使用它也要付出代价。在PHP中,当抛出一个异常时,许多机制必须被初始化,其中包括异常类实例和代码回溯信息。如果异常日志被记录到文件中,就会增加更多的开销。异常的强大功能使得我们很容易过分地使用它。

我们不应该使用异常来控制一般的应用程序流,这是因为这样做会大大降低应用程序的性能。例如,在数据库中搜索登录标识并且没有找到相应的用户时,就不应该使用它。在这种情况下,应该只返回null或者false来表示失败信息。这是从PHP函数中返回混合结果的标准方法;有效的结果表示返回的数据,而false或者null表示发生了错误。换句话说,当PHP函数没有找到希望查找的结果是,通常应该返回null或者false,而不是具体的值。

摘自:《PHP高级程序设计》 【加】Kevin McArthur 著  汪泳 等译

发表评论