Warning and error messages suppression on PHP, CodeIgniter


If you’re like me, stuck with 3 years old, unmaintained code that has to run on newer PHP version, you’re bound to receive some warning and error messages along the way. The correct way when facing situation like this is to find out what is causing these messages, and fix them.

Well, perhaps

To set it globally on any site on the server that uses PHP, you can set itu on php.ini file. Find out which php.ini your php install use, usually it’s on /etc/php.ini. If you use some kind of death contraption such as  cpanel, do this

[surfer@www ~]$ sudo php -i | grep php.ini
[sudo] password for surfer:
Configuration File (php.ini) Path => /usr/local/lib
Loaded Configuration File => /usr/local/lib/php.ini

As you can see, my cpanel easyapache 3 install stores php.ini in /usr/local/lib. Fine, I’ll use that

Open it with your favorite text editor, and find the line “display_errors”, and set it to “off” or “0”

display_errors = Off

Restart Apache,

To check whether this setting is active or in effect, create a php page, containing:

<?php
phpinfo();
?>

Open the web page from your web browser, scroll down to the “Core” section, and look for “display_errors”

coreThose pesky warning should go away.

…..Unless you’re using CodeIgniter. The chaps at CodeIgniter decide not to respect php.ini and instead put the flag on their index.php file. Hence,  to suppress the warning and error messages on CodeIgniter, open index.php with a text editor, and find this line

error_reporting(E_ALL);

If you want to skip warning and notices but keep the error messages, change it to

error_reporting(E_ERROR);

And to turn it off completely, change it to

error_reporting(0);

 

…And we’re done 🙂

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s