Ferenc Kovacs wrote:
  * *|E_ALL|* now includes *|E_STRICT|* level errors in the error_reporting
    
<http://docs.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting> 
configuration
    directive.

I would guess your code was running clean, because you didn't have E_STRICT in
your error_reporting, now in php 5.4, E_ALL includes that by default, and if you
don't explicitly mask it, you will see those messages.

This yet another example of subtle problems being created by not understanding when settings get overriden without it being obvious! My 5.3 servers are set up to ( E_ALL | E_STRICT ), and I was checking THAT in phpinfo, but a 'fix' for the strict errors had been applied elsewhere in the codebase which simply over-rid error_reporting so I was miss-led into thinking that these problems had been fixed some years back. The error_reporting 'fix' for E_STRICT errors was added back in 2009, and that was adding to my confusion this time around because my settings did not make sense because of the 5.4 change. A short term fix is to further bodge that override but I WOULD prefer to ACTUALLY fix the problems rather than just hide it again. SO my original question still applies, but for different reasons ... is there a crib sheet to help eliminate strict code errors in legacy code bases?

--
Lester Caine - G8HFL
-----------------------------
Contact - http://lsces.co.uk/wiki/?page=contact
L.S.Caine Electronic Services - http://lsces.co.uk
EnquirySolve - http://enquirysolve.com/
Model Engineers Digital Workshop - http://medw.co.uk//
Firebird - http://www.firebirdsql.org/index.php

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to