2010-03-15 68 views
0

美好的一天。如何在Zend Framework中剖析主義

我使用Doctrine作爲我的Zend Framework項目的ORM。這是我第一次使用它。我遵循ZendCast Doctrine章節,一切都適用於我,但我需要執行一些分析;

有一個Doctrine_Connection_Profiler類應該用於剖析Doctrine Model內部查詢,但我試圖使用它沒有成功。當我執行我的單元測試時,我總是得到「PDOException:您不能序列化或反序列化PDOStatement實例」異常。

這裏有一個例子:

$conn = Doctrine_Manager::connection($doctrineConfig['dsn'], $dbconfname); 
... 
if(APPLICATION_ENV != 'production'){ 
    $obj_doctrine_profiler = new Doctrine_Connection_Profiler(); 
    $conn->setListener($obj_doctrine_profiler); 
} 

我所有的單元測試,如果我評論/刪除

$conn->setListener($obj_doctrine_profiler); 

線工作。該代碼塊位於我的Bootstrap.php類中;奇怪的是,即使提到了代碼行,Web應用程序也能正常工作。

非常感謝您的幫助。

請原諒我,如果我的英語不是最好的。

回答

2

有一個第三方插件和圖書館的Zend框架,幫助我解決這個問題。該庫被稱爲ZFDebug,並且還有一個Doctrine適配器(默認情況下不在ZFDebug庫中)。完整的說明在ZFDebug包內。 Doctrine插件顯示所有事件,查詢以及在數據庫中所花費的時間。