Software Development

Evolving PHP Frameworks

There are no shortage of PHP frameworks, some grow large vibrant communities and a number wither and die over time. A number of the larger frameworks by user base have announced plans for the next steps in their evolution. Specifically we examine the next major versions of Zend Framework, Symfony, CodeIgniter and CakePHP.

Zend Framework

Zend Framework LogoZend Framework has recently outlined is vision for version 2, to not only build upon its strengths, but also improve some of the difficulties that it “…is cumbersome and difficult to learn, distribute, and extend, and one that is becoming less and less performant.” The requirements state that “[t]he primary thrust of ZF 2.0 is to make a more consistent, well-documented product, improving developer productivity and runtime performance”. The exact feature set is still under active discussion and there is active soliciting of comment and feedback from the wider community.

The minimum PHP requirement will be PHP 5.3, which allows the use of new language features such as namespaces. Backwards compatibility with ZF1 will not be maintained. Matthew Weier O’Phinney has stated that ZF2 is more about “…rewrites and refactoring to fix architectural concerns” than new feature sets.

A Git repository for the framework has been created, but it unlikely to see a substantial stable ZF2 release until early 2011.

Symfony

symfony PHP Framework logo

Symfony 2.0 has already made a preview release, but a production ready version of Symfony2 is not expected until late 2010. Symfony2 has its own site Symfony reloaded. There is detail on performance improvements and features, and it states “Symfony2 is fast, flexible, and easy to learn. It allows developers to build better and more easily maintainable websites with PHP.”

Symfony2 is making use of an number of external components such as PHPUnit 3.5, Propel 1.5 and Doctine 2. Symfony2 has a public git repository.

Backwards compatibility with symfony1 will be broken, and the minimum PHP requirement for Symfony2 will be PHP 5.3.2.

CodeIgniter

CodeIgniter PHP Framework logo

Ellis Labs officially announced that “…CodeIgniter 2.0 is baking…” back in March. Exact details of what this will entail are not available, as CodeIgniter development is a lot more closed than some of the other frameworks. From their changelog, PHP4 support is depreciated but may still work until CI 2.1. Scaffolding and plugins have been removed, and some internal reorganisation.

There is a public Mercurial repository at BitBucket.

No CI 2 release date has been announced.

CakePHP

CakePHP Framework logo

CakePHP had plans for Cake2 (PHP 5.2+) and Cake3 (PHP 5.3+) well back into 2009, but progress has been slow.

Cake2 has a roadmap with tasks such as E_STRICT compliance, moving from PHP4, remove deprecated classes and features, use of exceptions, interfaces etc. There is a Cake2 github repository.

In 2009, some of the Cake development team forked the Cake3 code into a new framework called Lithium which has a stated aim of “[a] php 5.3 only framework built for speed, simplicity, and maintainability”. Lithium is still under development, though the rapid release have slowed.

Conclusion

The new features of PHP5.3 are starting to take hold in the PHP development community now, and many frameworks as looking to take advantage of them. The plans and progress of Symfony2 and ZF2 look especially exciting for PHP development into the future.

Standard

One thought on “Evolving PHP Frameworks

Comments are closed.