For the start of a new year, it was time to clean out the list of PHP frameworks. A few have fallen by the wayside, but many new ones have been added. It seems that patterns and MVC is still all the rage, but less are professing to being Rails clones, though the inspiration of convention is still strong. There are a wide variety of framework types. From full stack (cakePHP, Symfony) to components (eZ), a bit of both (Zend) and minimalist (LightVC, TinyMVC, Pluf).
To be on the list, the framework needed to be PHP based (4 or 5), and have releases or code updates in the last 12 months. If it was close they have been left in the list. For the purposes of this article and site, the framework needed to have information available in English, though not necessarily as the first language. At this time projects that are content systems but can function as a framework, like Joomla, have been left off. I am inclined to create a new category for them.
A few frameworks are on the watch list, but not included in this update, generally because of a lack of documentation. These are:
- Nette Framework
- Orinoco Framework
- Flow3
- Recess!
- Kimura Framework
I am sure that at least 1 active project has been missed. If so, add a comment, and it will be checked out.
Please don’t let the comments descend into a my framework is better than yours shout off. If you have comments about a particular framework, then follow the review link add a review with detail, and help out your fellow developer.
Updates:
Flourish – flourishlib.com/ – PHP5
I guess I’d be biased since I built Xataface, but here is a quick overview of the framework. It is designed to help developers build a user-friendly front-end for their database in very little time.
From the Developer’s standpoint it is quite similar to Django. The user interface and abstractions are inspired by filemaker, so it is a good way to move your users away from Filemaker and into MySQL.
Check out:
http://xataface.com/wiki/How_to_build_a_PHP_MySQL_Application_with_4_lines_of_code
Would be nice if this showed the number of reviews / comments for each framework (would save a lot of clicking :-)
I know about another serious PHP 5 framework (stato), though the developer maintains the website in french only :
http://www.stato-framework.org/
But it’s worth trying if you get passed the language barrier !
It is nice to see a list without the Joomlas and Mambos being called frameworks. (I must add the same goes to ModX)
Those CMS systems are very commonly, mistaken to be Frameworks.
It think it is some kind of problematical to call zend framework or ez components frameworks. They tend more likely to be a collection of classes (aka class library) rather than to be a framework.
Normally “framework” is called a tool, that has libraries, that closely work together.
Yes strictly ezComponents is a component library, not a framework. But given the size of the library, the consistency in how it functions, I made the decision to include it. I possibly should have also included PEAR.
I have no problem calling Zend a framework. There is a framework there, it is up to the developer do they want to use it that way, or just take components they need.
You can check out (and perhaps add to your list) Atomik Framework. http://www.atomikframework.com
Atomik framework has been added. Nice well laid out site.
I do not understand why so many different frameworks are being built. It seems that if everyone pulled their features together there would be one incredible framework that could have a single configuration file that would allow you to choose to use ORM or not, choose to use Smarty or not, etc ad infinitum. There could also be overides for those who prefer writing xml or sql to those using convention. Please team up guys and gals. I would love to see at most one rails inspried framework and one agavi style framework. Until then could someone at least rank these frameworks in terms of adoption, community support and deployment? I imagine Zend is at the top but that is just a guess.
@David:
I agree, that there may be too many frameworks out there. But I doo think, that the PHP community has not yet focused on the main aspects in (web) software development. These are – in my eyes – performance, reusability (to gain efficiency) and software design. If you take these points for comparison only a few frameworks are suitable.
If you consider performance, zend is not realy at the top. See http://adventure-php-framework.org/Page/103-Yii-vs-apf/~/sites_demosite_biz-action/sites_demosite_biz-action/setLanguage/lang/en or http://www.yiiframework.com/performance for example. With reusability by design, IMHO only Mojavi/Agavi and the APF are still in the game. The sofware design criterion is a very selective criterion, too, because most frameworks do not cover this chapter as it should be. Software design is one of the most important things, due to the fact, that poor performance often comes from poor design or wrong design focus!
Thanks to Christian for the nice links & to Ernie for this cool listing. I would use some of this frameworks in an article about PHP framework performance.
Recently announced – Agile Toolkit. Full-featured PHP5-based framework focused on Simplicity and out-of-the-box User Interface with full AJAX integration.
Interesting project and nicely laid out site.
thankyou for such informaion….
Nette v2.0RC2 just released. English documentation, finally.
http://nette.org/