I thought that 4.7 is PHP compliant. Judging from all the comments here, and the new info from Goba (thanks btw, escalation or not, you DID help settle it), it seems to me that there is no way other than to go forward. It is fine to stay on an old version of a language for an inhouse application, where you have full control of the environment. However, no one can afford to stay on an old version when their application is used by untold thousands and hosted on machines outside their control. So, sooner or later, we will have to make it PHP 5.0.5 compliant. Coding guidelines will help, but they have to be explicit in why the specific syntax variant is used (because of forward compatibility with PHP). The other thing is to mandate that we develop with E_ALL and remove all the warnings. Of course, writing guidelines is one thing, and converting all the code is another huge lengthy effort. It is a huge effort, but I don't see any options other than to go forward with this.