How do I display exception errors thrown by Zend framework?
What's the value of the APPLICATION_ENV environment variable.
The standard public/index.php in a ZF application does the following:
// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
This means that if no APPLICATION_ENV is set, the environment is set as "production". If you look at your application.ini file, you'll see that the framework suppresses errors if the environment is production.
Of course, you're developing, so you want to use the 'development' environment.
If you're running under Apache/mod_php, you can set this in your httpd.conf, or an .htaccess file:
SetEnv APPLICATION_ENV development
Or you could always get ugly and hack away at your public/index.php:
// Define application environment
/*defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));*/
// Ugly hack because I'm too lazy to properly set up my environment.
define('APPLICATION_ENV','development');
If you create an application skeleton with Zend Tool, you'll typically have an error controller which will catch runtime errors and display them. You'll want to follow timdev's advice to SetEnv APPLICATION_ENV development
and then, in your application/configs/application.ini:
[development : production]
; This section defines config parameters loaded when the APPLICATION_ENV directive
; is set to 'development' - undefined parameters are inherited from the production
; section.
; show errors and exceptions during development
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1