Mambo Goes PHP 5


Mambo Goes PHP 5

For the past year, the Mambo team has been discussing the PHP requirements for future releases of Mambo. Mambo currently supports both PHP4 and PHP5 however since Mambo 4.6.0 we have included features that are only available to people running their sites on PHP5. Maintaining compatibility for both versions of PHP has hampered Mambo development so we embarked on a period of research and investigation into the most appropriate time to drop support for PHP 4.

PHP 4 was released in 2000 and is now deprecated. Development of this version was discontinued at the end of 2007 and on 08-08-2008 PHP4 reached its end of life. While it is clear that some hosts have been reluctant to change, uptake of PHP 5 has been climbing steadily. PHP 5 is not new – it was released as the successor to PHP 4 way back in 2004. Mambo has been supporting it for several years now. We ran two polls on the forums and spent months analysing hosting statistics, talking to hosts, and gathering as much information as possible before we made our decision. You can see the polls and discussion here: http://forum.mambo-foundation.org/showthread.php?t=11666 and http://forum.mambo-foundation.org/showthread.php?t=10974.

The factors involved in our decision include:

  • PHP 4 is now deprecated;
  • Many of our third-party libraries have dropped support for PHP4;
  • PHP 5 is more reliable and makes better use of server resources;
  • PHP 5 has many design changes to support modern, fast, and feature-rich web applications;
  • PHP 5 is more secure;
  • Mambo already has a number of features that are available only to people who are running Mambo on PHP 5.

Another important factor is that developing with two versions of PHP and thoroughly testing across two versions has made both development and testing slower.

Last year, when the GoPHP5 initiative was launched, Mambo was not prepared to make the move to PHP 5. Our research at that time indicated that there was still a way to go before PHP 5 became the mainstream offering on shared hosting. A lot has changed in the past year and PHP 5 is now widely supported either by default or as an option. Many open source projects have already decided to move to development on PHP5 and if Mambo wishes to remain competitive we need to be able to take full advantage of the improved functionality and security of PHP 5.

So, after weighing all the factors, Mambo is moving to PHP 5.2 and higher for Mambo 4.7.

The new minimum requirements for Mambo 4.7 will be:
PHP 5.2 or above;
MySQL 4.1 or above.

What does this mean for you?
Mambo will not be refactored to change all code in 4.7 to PHP 5. However, all new functionality is being written in PHP 5. The change gives us the opportunity to update many of our third-party libraries to use the latest versions and also gives us the opportunity to replace some inefficient libraries with newer code. This change also gives us the ability to reuse code which will mean that new features that are coming in Mambo 4.7 can be ported to Mambo 5.

We are excited about the change and are looking forward to the improved functionality, performance, speed and security PHP 5 allows us to bring to Mambo.