victor has posted 1 posts at DZone. View Full User Profile

Top 10 PHP Frameworks

04.02.2009
| 109938 views |
  • submit to reddit

These are the top ten PHP frameworks that are based on the MVC design pattern.


1. Yii

Yii is a component-based high-performance PHP framework for developing large-scale Web applications. Yii is written in strict OOP and comes with thorough class reference and comprehensive tutorials. From MVC, DAO/ActiveRecord, widgets, caching, hierarchical RBAC, Web services, to theming, I18N and L10N, Yii provides nearly every feature needed by today’s Web 2.0 application development. And all these come without incurring much overhead. As a matter of fact, Yii is one of the most efficient PHP frameworks around.


2. CodeIgniter


CodeIgniter is an Application Development Framework - a toolkit - for people who build web sites using PHP. Its goal is to enable you to develop projects much faster than you could if you were writing code from scratch, by providing a rich set of libraries for commonly needed tasks, as well as a simple interface and logical structure to access these libraries. CodeIgniter lets you creatively focus on your project by minimizing the amount of code needed for a given task.


3. CakePHP

CakePHP is a rapid development framework for PHP which uses commonly known design patterns like ActiveRecord, Association Data Mapping, Front Controller and MVC. Our primary goal is to provide a structured framework that enables PHP users at all levels to rapidly develop robust web applications, without any loss to flexibility.


4. PHPDevShell



PHPDevShell is an Open Source (GNU/LGPL) Rapid Application Development framework written using only PHP with no Javascript and comes with a complete GUI admin interface. It is aimed at developing admin based applications as plugins, where speed, security, stability and flexibility are essentials. It is designed to have a very easy learning curve without complicated new terms to learn. The need for a light, fully functional GUI with limitless configuration brought forward PHPDevShell. We strive to keep direction and focus in our development according to our moto.


5. Akelos



The Akelos PHP Framework is a web application development platform based on the MVC (Model View Controller) design pattern. Based on good practices, it allows you to:

  • Write views using Ajax easily
  • Control requests and responses through a controller
  • Manage internationalized applications
  • Communicate models and the database using simple conventions.

Your Akelos based applications can run on most shared hosting service providers since Akelos only requires that PHP be available at the server. This means that the Akelos PHP Framework is the ideal candidate for distributing standalone web applications as it does not require any non-standard PHP configuration to run.


6. Symfony


Symfony is a web application framework for PHP5 projects.

It aims to speed up the creation and maintenance of web applications, and to replace the repetitive coding tasks by power, control and pleasure.

The very small number of prerequisites make symfony easy to install on any configuration; you just need Unix or Windows with a web server and PHP 5 installed. It is compatible with almost every database system. In addition, it has a very small overhead, so the benefits of the framework don’t come at the cost of an increase of hosting costs.

Using symfony is so natural and easy for people used to PHP and the design patterns of Internet applications that the learning curve is reduced to less than a day. The clean design and code readability will keep your delays short. Developers can apply agile development principles (such as DRY, KISS or the XP philosophy) and focus on applicative logic without losing time to write endless XML configuration files.

Symfony is aimed at building robust applications in an enterprise context. This means that you have full control over the configuration: from the directory structure to the foreign libraries, almost everything can be customized. To match your enterprise’s development guidelines, symfony is bundled with additional tools helping you to test, debug and document your project.


7. Prado

The PRADO group is a team of PRADO enthusiasts who develop and promote the PRADO framework and the related projects.

Team Members

  • Qiang Xue - founder of PRADO framework, core development
  • Xiang Wei Zhuo - core development (javascripts, active controls, DB controls, tests)
  • Jason Ragsdale - site and forum administration
  • Knut Urdalen - test, marketing
  • Carl G. Mathisen - design and document comment system
  • Christophe Boulain - component development, test
  • Michael Hartl - component development, test
  • Eirik Hoem - core development
  • Yves Berkholz - core development
Past Team Members

Alex Flint, Brian Luft, John Teague, Todd Patrick, Pim van der Zwet, Tim Evans, Alban Hanry, Marcus Nyeholt

History of PRADO

The very original inspiration of PRADO came from Apache Tapestry. During the design and implementation, I borrowed many ideas from Borland Delphi and Microsoft ASP.NET. The first version of PRADO came out in June 2004 and was written in PHP 4. Driven by the Zend PHP 5 coding contest, I rewrote PRADO in PHP 5, which proved to be a wise move, thanks to the new object model provided by PHP 5. PRADO won the grand prize in the Zend contest, earning high votes both from the public and from the judges’ panel.

In August 2004, PRADO was hosted on SourceForge as an open source project. Soon after, the project site xisc.com was announced to public. With the fantastic support of PRADO developer team and PRADO users, PRADO evolved to version 2.0 in mid 2005. In this version, Wei Zhuo contributed to PRADO with the excellent I18 and L10N support.

In May 2005, we decided to completely rewrite the PRADO framework to resolve a few fundamental issues found in version 2.0 and to catch up with some cool features available in Microsoft ASP.NET 2.0. After nearly a year’s hard work with over 50,000 lines of new code, version 3.0 was finally made available in April 2006.

Starting from version 3.0, significant efforts are allocated to ensure the quality and stability of PRADO. If we say PRADO v2.x and v1.x are proof-of-concept work, we can say PRADO 3.x has grown up to a serious project that is suitable for business application development.


8. Zend



Extending the art & spirit of PHP, Zend Framework is based on simplicity, object-oriented best practices, corporate friendly licensing, and a rigorously tested agile codebase. Zend Framework is focused on building more secure, reliable, and modern Web 2.0 applications & web services, and consuming widely available APIs from leading vendors like Google, Amazon, Yahoo!, Flickr, as well as API providers and cataloguers like StrikeIron and ProgrammableWeb.
Expanding on these core themes, we have implemented Zend Framework to embody extreme simplicity & productivity, the latest Web 2.0 features, simple corporate-friendly licensing, and an agile well-tested code base that your enterprise can depend upon.


9. ZooP


The Zoop Object Oriented Php Framework (The Zoop PHP Framework for short). A framework written in and for php.

The Zoop PHP Framework is stable, scalable and portable. It has been in production use for the last 5 years and has been used in many production environments. The Zoop PHP Framework is designed to be fast, efficient and clean. It is easily extendable and you choose to include only the functionality you use.

With Zoop an inexperienced coder can make secure web applications quickly. A more experienced coder will really appreciate how flexible The Zoop PHP Framework is. Both experienced and inexperienced coders alike will appreciate the automations that are at his/her disposal to handle mundane tasks.

The Zoop PHP Framework encourages separation of display, logic and data layers(MVC).

The Zoop PHP Framework is made up of many components and integrates many different projects including smarty (http://smarty.php.net) and the prototype AJAX framework. It also makes use of PEAR modules (http://pear.php.net). The efficient core components handle many of the functions you would have to code yourselves. Zoop’s integrated error handling can be configured to log errors for production environments, and is highly informative and readable which makes bugs easy to find and squash.

Zoop has been designed to make the developers life easier by providing tools to make efficient use of his/her time. On of our more unique and notable features is our implementation of GuiControls, a revolutionary idea in PHP that provides many form widgets with validation completely integrated, as well as a framework to develop your own guiControls extremely easily.


10. QPHP



QPHP stands for Quick PHP and is a MVC framework similar as architecture to ASP.NET.

I, as the author of the project, have spent the last 8 years working on web projects using various Java frameworks, ASP.NET and PHP. This framework tries to get the best of the above platforms as well as to avoid the problematic parts. Basically it:

  • Brings the elegance of Java and C#
  • Drops all Perl like bizzare statements that other PHP frameworks use
  • Relies extensively on OOP concepts

Code-behind approach is used, so every webpage consists of 2 files:

  • .PHP - presentation logic
  • .PHP.SCRIPT - business/programming logic
FACTS ABOUT QPHP
  • Less than 70 classes
  • Less than 300K in size
  • 3 years of internal use
  • Works with PHP4/PHP5
  • Easy database access
  • Fast and stable
  • Event driven, component based
  • AJAX compatible
  • I18N support
  • View/Session/Application states
  • Simple input validation
  • 5 menu controls
References
Published at DZone with permission of its author, victor davtyan. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Joseph Schmidt replied on Wed, 2009/05/06 - 5:29am

I know that there are may framewokrs, but 

this one:

http://framework.maintainable.com/

looks much more simpler to me, but still seems to keep all the conventions from the RoR books

Cherif Bouchelaghem replied on Tue, 2009/06/02 - 9:34am

For me there's no comparaison between all those frameworks because each one of them has it's own design and implementation for example zend framework is a powerful components framework as ezcomponent and cakephp is a pure MVC framework for RAD developement so it can help freelancer very much to reduce costs and  can be extended in application's developement process, my opinion cakePhp is the ideal framework for the begining and for who wants to understand the MVC architecture or design patterns in general and codeigniter is the most simple one.

Finaly i advice novices in MVC to go and bake some cake first

Saneesh Parambath replied on Sat, 2010/11/13 - 11:06am

Hi All, I am Co Founder of a tech company. We are looking at possibilities of developing web applications on PHP but not sure of which framework. Our requirement is to have a framework which helps in developing attractive UI in the minimum amount of time. Also the changes to the UI as per customer's requirement have to be done really fast. We have had some bad experience in developing applications using Java with frameworks like JSF, JSTL. So this time we want to make sure that we select a framework which has a very small learning curve and fast to implement changes. Thanks in advance.

Carla Brian replied on Wed, 2012/07/18 - 8:19am

The CakePHP framework represents a foundational structre for web apps.The developers are enabled to work in a structured and rapid manner. - Mercy Ministries

Anastasiya Panf... replied on Tue, 2012/11/13 - 9:42am

I agree Yii is the most efficient one.What I like the most is the number of good extensions like bootstrap or backvendor. They help to spare lots of time!


Shichao Li replied on Tue, 2013/02/12 - 8:55pm

The other top 10 php frameworks by vote from here  http://www.phpframeworks.com/top-10-php-frameworks/ 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.