Zend_Exception有什么意义?

时间:2011-12-03 20:42:07

标签: php zend-framework exception

为什么有必要在Zend Framework中使用它,它会带来哪些好处?为什么不直接使用普通的php异常?

2 个答案:

答案 0 :(得分:3)

当您捕获异常时,可以使用异常的类名,并且可以以不同方式处理不同类型的异常。通常,zend框架中的每个模块都有不同的异常类。

例如,如果您使用的是Zend_Queue,那么该库将返回Zend_Queue_Exception个例外,这些例外会延伸Zend_Exception。如果异常与队列数据库适配器相关,它也可能返回Zend_Db_Exception个异常。

$options = array(
            'name' => 'queue',
            'driverOptions' => $options
        );
try {       
  $queue = new Zend_Queue($config->queue->adapter, $options);
} catch (Zend_Queue_Exception $e) {
    // handle queue issues
} catch (Zend_Db_Exception $e) {
 // handle db issues
}

答案 1 :(得分:2)

我确信Zend_Exception扩展Exception,所以它只不过是Zend框架其余部分的范围限定范围。这是一件好事,因为如果你不想列出你想要捕获的所有可能的异常(在粒度级别),你可以捕获不同级别的东西。