I have a development version of PHP on Apache. I moved it to production and got this weird notices in my website. I don't have it on development version. How to enable these notices on my development version of website to fix them?
3 Answers
If you have access to your php.ini, then Björn answer is the way to go.
However, if you don't, or if you want to change a particular script / project error level, do this at the beginning of your code:
ini_set('display_errors', 1);
// Enable error reporting for NOTICES
error_reporting(E_NOTICE);
You can see which levels are available for error_reporting here: http://us2.php.net/manual/en/function.error-reporting.php.
It's always a good practice not to show any errors on production environments, but logging any weird behaviors and sending by mail to the administrator. NOTICES should only be enabled on development environments.

- 24,920
- 5
- 67
- 85
-
Good point. But on a development server you should show all notices, warnings and errors - so I would recommend using error_reporting(E_ALL); (equivalent to error_reporting(6143);). – Björn Mar 21 '09 at 22:54
-
Absolutely. E_ALL for development is the best option. – Seb Mar 21 '09 at 23:46
Change your php.ini file, the line that says error_reporting, to E_ALL.
I.e:
error_reporting = E_ALL

- 29,019
- 9
- 65
- 81
Seb is right, though you really should use constant for error_reporting().
error_reporting(E_NOTICE);
You can use bitwise operations to pick exactly the messages you want to display. For example:
// notices and warnings
error_reporting(E_NOTICE | E_WARNING);
// everything except errors
error_reporting(E_ALL ^ E_ERROR);

- 39,840
- 10
- 78
- 97