qxlab qxlab - 9 months ago 95
PHP Question

How to eliminate php5 Strict standards errors?

After upgrading my PHP to 5.4.3 (WAMP server 2.2), my web app made in CakePHP 1.3, is showing the following errors in my index:

Strict standards: Redefining already defined constructor for class Object in C:\...\cake\cake\libs\object.php on line 63

Strict standards: Non-static method Configure::getInstance() should not be called statically in C:\...\cake\cake\bootstrap.php on line 49

After some research I've found that some people solve this problem by setting the "error_reporting" in php.ini file to "E_ALL & ~E_STRICT".

I did that in both php.ini files (C:\wamp\bin\php\php5.4.3 and C:\wamp\bin\apache\apache2.4.2\bin) that I have in my computer, and it didn't solve my problem.

I also tried to put "php_value error_reporting 6143" in C:...\cake.htaaccess but without success.

Does anybody know how can I solve this? (I can't upgrade my CakePHP because firebird)


One of the changes in php 5.4 is that E_STRICT is now part of E_ALL

So, in your /cake/bootstrap.php you could remove the E_STRICT from your error reporting:

error_reporting(E_ALL ^ E_STRICT);

and be compatible again with before 5.4 versions.