I've got a Ubuntu server running Apache2 with PHP 5. Within the php.ini I set error_reporting = E_ALL | E_STRICT and error_reporting = E_ALL | E_STRICT, but PHP continues to be not exhibiting error messages. I am also using Apache virtual hosts.

Also, what's the most strict error confirming PHP5.3 needs to offer? I would like my code to as up-to-date and future-proof as you possibly can.

You should also make certain you've within your php.ini the next set set:

display_errors = On

Or errors goes simply to the log that's set automatically or specified by the virtual host's configuration.

The php.ini file is how base configurations for those php in your server, however, these can easilybe overridden and alterd around the PHP code and affect everything after that change. This occurs a in frameworks. A great check would be to add the display_errors for you php.ini. If you do not see a mistake, only one has been drenched, place this towards the top of the file leading to the mistake:

ini_set('display_errors', 1); 
error_reporting(E_ALL);

If the works then something earlier inside your code is crippling error display.

Whenever you update the configuration within the php.ini file, you may have to restart apache. Try running apachectl restart or apache2ctl restart, or something like that like this.

Also, in your soul ini file, make certain you've [cde], only inside a development atmosphere, never inside a production machine.

Also, the most stringent error confirming is what you've reported, display_errors = on. You'll find a lot of error levels at the php docs.

I understand this thread now has wrinkles however i just solved an identical trouble with my Ubuntu server and thought I'd give a note here to assist others because this thread was initially page in the search engines for that subject of PHP not exhibiting errors.

I attempted several configuration configurations for that error_confirming value in php.ini. From E_ALL E_STRICT to E_ALL &lifier E_NOTICE and none labored. I wasn't getting any syntax errors displayed within the browser (that is rather annoying on the development server). After altering the mistake_confirming setting to "E_ALL" everything began working. Unsure if it's an Ubuntu Oneric specific problem but after restarting Apache errors began showing within the HTML pages the server was serving. Appears the additional options confusing things and all sorts of error confirming stops. HTH somone else.