Finding a potential PHP MVC framework to test out isn’t really the most interesting thing since there seems to be a hundred of them to choose from. So instead of read through every single user guide or take a leap of faith from blog posts on X vs Y, I decide to do an analysis on all PHP MVC frameworks out there: I believe statistics are bias, but won’t lie.
Deciding Factors
Here, I will not conclude with a “winner” framework, instead I will explain couple deciding factors that able to grasp my interest without knowing their details.
Version number
This gives you an idea on maturity of a framework: version 0.x tends to be ‘testing the water’ framework; 1.x is stable; and 2.x above can mean mature framework after major rework.
Last Release Date
You want to work on a responsive open source project, releases within 6 months is an acceptable period to me.
Existing Participation
Find out whether there are many users of a particular framework by seeking related questions on StackOverflow or numbers of search results from Google.
Official Community
A structured community can be crutial when you get deeper into the framework and may need to ask questions. Official forum and IRC channel are good indications of their activity level.
Verdict
I keep a far detailed version tracking every existing PHP MVC frameworks out there and plan to maintain the list as time goes.
However, it all summerised down to the 6 popular frameworks (in alphanumerical order):
Stable Version | Release Date | StackOverflow Questions | Google Results | ||||
---|---|---|---|---|---|---|---|
CakePHP | 1.3.8 | 21/03/2011 | 3,701 | 3,100,000 | |||
CodeIgniter | 2.0.2 | 8/4/2011 | 3,674 | 2,100,000 | |||
Kohana | 3.1.2 | 13/03/2011 | 879 | 247,000 | |||
Symphony | 1.4.11 | 30/03/2011 | 1,831 | 749,000 | |||
Yii | 1.1.7 | 27/03/2011 | 259 | 965,000 | |||
Zend Framework | 1.11.5 | 7/4/2011 | 5,848 | 1,800,000 |
Summary
In this article I will talk about factors I look at when picking a PHP MVC framework. Having little time to go through user guide in-depth, there are couple of statistical value that may help you decide a framework to start from.