Just to be clear: PHP didn't change these language constructs. The old constructs are still available. You made a conscious choice to use new language features and are now (understandably) frustrated that they don't work in a 5-year-old version of the language.
5.3 was released in 2009. Language constructs ought to have been standardized by then.
Absolutely not. By this logic, no languages would ever evolve. The PHP core team are making an effort to evolve PHP into a better, modern language. If you want to take advantage of this, then do. If you want to write code that runs on your clients' older servers, then write backwards-compatible code and don't expect to be able to use new language features.
Comments
Just to be clear: PHP didn't change these language constructs. The old constructs are still available. You made a conscious choice to use new language features and are now (understandably) frustrated that they don't work in a 5-year-old version of the language.
Absolutely not. By this logic, no languages would ever evolve. The PHP core team are making an effort to evolve PHP into a better, modern language. If you want to take advantage of this, then do. If you want to write code that runs on your clients' older servers, then write backwards-compatible code and don't expect to be able to use new language features.