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