PHP 5 is outdated
Saturday, 07 August 2010Remember the trouble we all had when moving from PHP4 to PHP5? Well, the trouble is not over. In the field we've seen hundreds of website-owners that make good effort into keeping their Magento and Joomla! installations up to date, while their PHP-version is over 4 years old. Saying you need PHP 5.2 is not good enough anymore, the real question is how often do you update your PHP-install.
The fuzz about PHP-installs
Now you might know that last decennium there was a lot of fuzz on PHP-versions. Software development is speeding up, but it seems too many people are failing to upgrade their hosting environment as well. This is why system requirements are becoming more and more important nowadays: The PHP programming language is evolving slowly but steadily in the direction of being object-oriented (compare it a bit with Java). This brings along nice features for programmers, but also puts up the requirement to keep your PHP-environment up to date.
Magento was always built upon PHP 5, but also added requirements for extra PHP-extensions like PDO and SOAP. The upcoming Joomla! 1.6 will drop compatibility with PHP4, and the Nooku Framework (which adds rapid development to Joomla!) uses cool MySQLi features which also requires PHP 5.2 and the mysqli extension. They're all examples of how cool new features are only made possible by keeping PHP-development in sync with the features of new PHP-versions. It makes sense, right?
Which PHP version are you using?
So now PHP 5.3 is emerging. Well, emerging, it has already been out there since June 2009 (more than 1 year) but slowly hosting environments are being updated as well. At the time of writing PHP version 5.2.13 is out, while there is also the parallel version PHP 5.3.2.We ourselves are using PHP 5.2.12 but are planning to upgrade to PHP 5.3 soon.
There are major differences between PHP 5.2 and PHP 5.3, but looking at the features of PHP 5.3 we surely want to upgrade. Of course this gives some problems as well, because Joomla! 1.0 will definitely not work under PHP 5.3. But hey, Joomla! 1.0 is already dead for years and it should have been migrated already.
The hosting environment is getting the least attention ...
And that's exactly touching the point: Upgrading to PHP 5.3 means breaking compatibility with Joomla! 1.0. There for some hosters are hesitating with such a major change - it's better to stick to the old version, than to add a lot of work to it. Unfortunately, nobody blaims the website-owner for not upgrading their Joomla! 1.0 site to Joomla! 1.5. But because that Joomla! 1.0 site is not upgraded, security patches are not applied, performance is not enhanced, and newer applications can not be introduced because they are incompatible with outdated software.
So let's look at the date - you do it in the supermarket, why not with your software: PHP 4 is definitely obsolete, but PHP 5.2.0 already dates out of november 2006 and (to go even more back to the past) PHP 5.0.0 dates out of july 2004. In other words: PHP 5 was introduced over 6 years ago, while PHP 5.2.0 (the version so many hosters are scared about) is about 3.5 years old.
... while it should not
So any hosting environment which is using PHP 5.2 or older, has not been updated for 3.5 years. We would call the administrator of that environment straight out sloppy. But it should also be noted that PHP 5.2.0 contained some bugs, that were fixed in PHP 5.2.1, which again contained bugs which were fixed in PHP 5.2.2 - etcetera. There for, we decided to put down the minimum requirement for all our Yireo extensions to PHP 5.2.8 - which fixed some major issues but is still not too new.
It's ashame that so much time is being put into supporting older PHP-driven software running on outdated PHP-environments. The major improvement here would be that everybody - the customer, the hoster, the programmer - understands that keeping all software in sync and up-to-date is vital for maintaining security, stability and performance. If only.
