Wednesday, August 27, 2008

Top PHP Frameworks

Top Ten PHP Frameworks :
-----------------------

1. Zend Framework
2. CakePHP
3. Symfony Project
4. Seagull Framework
5. WACT
6. PRADO
7. PHP on TRAX
8. ZooP Framework
9. eZ Components
10. CodeIgniter


1. Zend Framework
-----------------

Everyone knows Zend — "The PHP Company." When you download and install PHP, you're downloading it
from Zend and have been since around V3. In addition to distributing PHP, Zend Technologies has offered a
wide range of PHP support technologies over the years. It should be no surprise that Zend offers a framework for PHP —
a popular one at 2 million downloads to date. If your boss has heard of a PHP framework,
the Zend Framework is likely to be the one.

Now, the world’s most popular web programming language gets even better with
an easy to use framework for developing the next generation of web applications.

Documentation
Download


2. CakePHP
----------

Cake 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.

- A very powerful rails-like ORM (object relational mapper) layer, with rails-like active record class
- Core developers are very active in their IRC channel (means real time support!)
- bake.php, which is a code generation tool
- bakery, a centralised code and tutorial collection website, heaps of useful information there

Documentation
Download

3. Symfony
----------

Sponsored by Sensio, symfony "aims to speed up the creation and maintenance of Web applications,
and to replace the repetitive coding tasks by power, control and pleasure." The symfony framework has been
used worldwide in a number of enterprise-level applications, perhaps most notably Askeet and Yahoo! Bookmarks. Odds are that if
someone you know has installed, used, or played around with a PHP framework, that framework was symfony.

Based on the best practices of web development, thoroughly tried on several active websites, symfony aims to speed up the creation
and maintenance of web applications, and to replace the repetitive coding tasks by power, control and pleasure.

Documentation
Download


4. Seagull
----------

Seagull PHP Framework (Seagull) is an OOP PHP software framework for building web, command line and GUI applications. Seagull uses Model-view-controller design pattern. Many popular PHP applications are integrated within the project, as are various templating engines, PEAR libs, testing tools and managed library code.
Seagull is a mature OOP framework for building web, command line and GUI applications. Licensed under BSD, the project allows PHP developers to easily integrate and manage code resources, and build complex applications quickly.

Features :
Compare the features list with your current framework/CMS. Seagull offers the following key features:

* PHP 4/5 compatible
* compact core framework with basic CMS and other modules included to get you started
* ease of use: learning curve not as steep as other frameworks
* enterprise ready, performance conscious design
* tight integration with PEAR libraries, great for prototyping complex projects
* integrated ORM for RAD
* highly configurable, easy to integrate with 3rd party code
* community support: the project enjoys participation from a large and active developer community, want the documentation in Chinese, looking for Seagull devs near you?
* loosely coupled components, use template engine of your choice, output to multiple devices or CLI
* staying power: started in 2001, the Seagull project has been steadily growing in popularity and now enjoys international recognition


Documentation
Download
Forum


5. Web Application Component Toolkit (WACT)
------------------------------------------

The Web Application Component Toolkit is a framework for creating web applications. WACT facilitates a modular approach where individual, independent or reusable components may be integrated into a larger web application. WACT assists in implementing the Model View Controller pattern and the related Domain Model, Template View, Front Controller and Application Controller patterns.

The WACT framework is developed with the philosophy of continuous refactoring and Unit Testing. WACT encourages these activities in applications based on the framework. WACT uses Simple Test as a unit testing framework.

Documentation


6. PRADO
--------

PRADO is a component-based and event-driven framework for rapid Web programming in PHP 5. PRADO reconceptualizes Web application development in terms of components, events and properties instead of procedures, URLs and query parameters.

PRADO component is a combination of a specification file (in XML), an HTML template and a PHP class. PRADO components are combined together to form larger components or complete PRADO pages.

Developing PRADO Web applications mainly involves instantiating prebuilt and application-specific component types, configuring them by setting their properties, responding to their events by writing handler functions, and composing them into application tasks.

PRADO provides the following benefits for Web application developers:

* reusability - Codes following the PRADO component protocol are highly reusable. Everything in PRADO is a reusable component.
* ease of use - Creating and using components are extremely easy. Usually they simply involve configuring component properties.
* robustness - PRADO frees developers from writing boring, buggy code. They code in terms of objects, methods and properties, instead of URLs and query parameters. The latest PHP5 exception mechanism is exploited that enables line-precise error reporting.
* performance - PRADO uses a cache technique to ensure the performance of applications based on it. The performance is in fact comparable to those based on commonly used template engines.
* team integration - PRADO enables separation of content and presentation. Components, typically pages, have their content (logic) and presentation stored in different files.

Documentation
Download
Download now

7. PHP on TRAX
---------------

Php On Trax (formerly Php On Rails) is a web-application and persistance framework that is based on Ruby on Rails and includes everything needed to create database-backed web-applications according to the Model-View-Control pattern of separation. This pattern splits the view (also called the presentation) into "dumb" templates that are primarily responsible for inserting pre-build data in between HTML tags. The model contains the "smart" domain objects (such as Account, Product, Person, Post) that holds all the business logic and knows how to persist themselves to a database. The controller handles the incoming requests (such as Save New Account, Update Product, Show Post) by manipulating the model and directing data to the view.

In Trax, the model is handled by what's called a object-relational mapping layer entitled Active Record. This layer allows you to present the data from database rows as objects and embellish these data objects with business logic methods.

Documentation
Download


8. ZooP Framework
------------------

What is Zoop

Zoop is an object oriented PHP framework. Zoop is modeled after the MVC design pattern. It is a high performance, secure, and scalable framework for PHP. It is designed to be very fast and efficient and very nice for the programmer to work with. Zoop has been built in a modular way so it is both easily extensible, and light. It has been in development and production use since 2001 and is quite mature.

Zoop Features

Controller

The Zoop controller is completely object oriented and benefits greatly from such features as relationships and inheritance. It is also really simple to use.

View

Zoop took all the niceness that is Smarty, and added some great features like fine grained caching, widgets, integrated validation and more.

Model

Zoop supports many database engines including mysql, pgsql, sqlite, and provides multiple simultaneous connections with it's own db library which can use either peardb or PDO for the back end.

Elegant URL design

Finally! Easy to use, simple, pretty, flexible URLs.

Template system

Use Smarty's powerful, extensible and designer-friendly template language.

Cache system

A driver based Cache system that is easy to use, fast and powerful. It supports memcache and file based caching right out of the box.

Easy Web Forms

Zoop's Forms bridge the gap between the model and the view providing easy to use form creation, validation as well as grid like sorting and searching for database driven data. Not database driven, then benefit from Zoop's GuiControls, configurable form elements with integrated validation.

Security

Zoop addresses and resolves many of the known php security problems. Zoop prevents SQL Injection Cross Site Scripting. Zoop has both type and format based validation and powerful input filtering all integrated within the controller. This means all data is clean before you even see it.

Add-ons

Zoop supports many AJAX libraries including dojo, prototype and yui, PDF creation, session handling, and SMTP template-based email sending. Zoop also permits for easy integration of 3rd party classes like those from phpclasses.org, pear and gasp, even other frameworks.

Documentation
Download

The latest version of the Zoop framework is available at SourceForge.net.

There are three files at SourceForge:

* Zoop—The Zoop Framework.
* Skeleton—A Zoop skeleton application.
* Lib—Zoop's PEAR library dependencies.



9. eZ Components
-----------------

eZ Components is an enterprise ready general purpose PHP components library used independently or together for PHP application development. With eZ Components, developers do not have to reinvent the wheel, instead they can concentrate on solving customer-specific needs.

Documentation
Requirements
Download



10. CodeIgniter
---------------

Designed to enable, not overwhelm, Code Igniter is a powerful PHP framework with a very small footprint,
built for PHP coders who need a simple and elegant toolkit to create full-featured web applications.

- Sensational documentation! Read the manual and you have everything you need to start working on it
immediately (this is a major factor for me)
- A large number of official built-in libraries for functionalities such as FTP, thumbnail generation, zip compression, etc
- less strict convention offers more flexibility
- A very active and helpful community
- A wiki for code and tutorials, not as good as the bakery site for Cake, but still very useful

Documentation
Download


Sponsored Links
----------------

Difference between CakePHP and CodeIgniter
Comparison between all Frameworks

Some more famouse frameworks
----------------------------

Mobius
------

The Moebius PHP Library is a project that concentrates on building a set of classes that wraps around the built-in php functions.
The idea behind the creation of this library is to create an object framework to work on PHP,
going from mySQL management to Table manipulation. The site is powered in fact by the moebius library.


Fusebox
-------

Fusebox is the most popular framework for building ColdFusion and PHP web applications. “Fuseboxers” find that the
framework releases them from much of the drudgery of writing applications and
enables them to focus their efforts on creating great, customer-focused software.


Phrame
------

Phrame is a web development platform for PHP based on the design of Jakarta Struts. Phrame provides your basic
Model-View-Controller architecture, and also takes a step further adding standard components such as: HashMap,
ArrayList, Stack, etc…


Blueshoes
---------

BlueShoes provides developers with real-world solutions for common system components such as User Management,
Session Handling, Closed User Groups, Exception Handling and Logging, Object Persisting as well as Form building and Handling.

No comments:

Popular Posts