在我的ZF項目的application.ini中,我設置了「resources.frontController.params.displayExceptions = 1」。但是,如果拋出異常,則瀏覽器中不會顯示異常。Zend Framework - displayExceptions屬性不起作用
綜觀生成的ErrorController.php的代碼,它看起來像這行:
如果($這個 - > getInvokeArg( 'displayExceptions')==真)
總是失敗,這條件。
我是新來的採埃孚,所以有可能是明顯的我失蹤 - 但我不知道爲什麼它沒有被設置。它似乎正在處理application.ini文件,因爲如果連接不到數據庫,它將無法連接到我的數據庫。
編輯
就發現了線索:
我改變了我的modules目錄。我剛剛撤消了這一改變,並且這個問題不再發生。但是,我確實想要更改模塊目錄。下面是我所作的更改的列表:
在我的application.ini,我說:
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
在我的Bootstrap類,我說:
protected function _initFrontController()
{
$front = Zend_Controller_Front::getInstance();
$front->addModuleDirectory(dirname(__FILE__) . '/modules');
$front->setDefaultModule('frontend');
return $front;
}
這似乎成功地處理該模塊的新位置和網站工作正常(除了displayExceptions標誌沒有正確設置)。
任何想法,爲什麼這會導致此症狀?
是什麼調試器告訴你嗎?或Zend_Debug ::轉儲()這些變量? – markus 2011-05-04 13:36:33
@markus我應該看什麼變量?對不起,我是ZF的新手,所以不太確定如何以編程方式訪問這些application.ini設置。我嘗試拋出Zend_Controller_Front :: getInstance() - > getParams(),但沒有任何有用的東西。 – Dan 2011-05-04 14:21:53
什麼是您的應用程序環境?通常它應該設置爲'development'以顯示異常。 – Vika 2011-05-04 14:24:25