25 OpenSource PHP Framework

PHP Framework nowadays is getting more popular to web application developers who uses PHP as their main language. A web application framework is a software framework that is designed to support the development of dynamic websites, Web applications and Web services. The framework aims to alleviate the overhead associated with common activities used in Web development. For example, many frameworks provide libraries for database access, templating frameworks and session management, and often promote code reuse. And needless to say that it can cutoff half of your regular development time.

So lets begin with the list (no particular order).


1. Zend Framework

Zend Framework

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.
Extreme Simplicity & Productivity

Zend Framework Components

2. CakePHP

CakePHP

CakePHP is a rapid development framework for PHP that provides an extensible architecture for developing, maintaining, and deploying applications. Using commonly known design patterns like MVC and ORM within the convention over configuration paradigm, CakePHP reduces development costs and helps developers write less code.

Hot Features

Basic Features

3. CodeIgniter

code igniter

CodeIgniter 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. If you’re a developer who lives in the real world of shared hosting accounts and clients with deadlines, and if you’re tired of ponderously large and thoroughly undocumented frameworks CodeIgniter is right for you.

4. SilverStripe

SilverStripe

SilverStripe is a free and open source programming framework and content management system (CMS) for creating and maintaining websites. The CMS provides an intuitive web-based administration panel, allowing any person to maintain their website without knowledge of markup or programming languages.

SilverStripe offers a flexible MVC development framework known as Sapphire. Much like Ruby on Rails, but for PHP, it ensures developers are capable of extending and enhancing the functionality of the CMS and the website. More importantly, SilverStripe provides developers with complete control of the generated markup; allowing for higher, semantic standards of XHTML.

5. Akelos Framework

Akelos Framework

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:

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

Symfony is a full-stack framework, a library of cohesive classes written in PHP5.

It provides an architecture, components and tools for developers to build complex web applications faster. Choosing symfony allows you to release your applications earlier, host and scale them without problem, and maintain them over time with no surprise.

Symfony is based on experience. It does not reinvent the wheel: it uses most of the best practices of web development and integrates some great third-party libraries.

Thousands of developers already trust symfony for their applications!

New users join the community every day, and that makes of symfony the most popular PHP5 framework around. A large community means easy-to-find support, user-contributed documentation, plugins, and free applications.

7. Zoop Framework

ZOOP

Far from being Yet Another PHP Framework or Rails clone, Zoop has been in development since 2001 and in use for the last 6 years in a number of different production environments. While it predates the recent proliferation of PHP frameworks, it’s based on solid MVC principles, including separation of display, logic, and data layers. It’s designed to be efficient, modular, and extensible, striking a balance between lightweight and fully-featured.

  1. A well-organized, fully-featured front controller.
  2. A Smarty based view layer, enhanced with form generation and rich UI controls.
  3. Several integrated data model access styles.
  4. Automation of common mundane tasks.
  5. Great native libraries and friendly integration with many third-party projects.

8. PHP on TRAX

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.

9. eZcomponents

EzComponents

eZ Components is an enterprise ready, general purpose PHP components library. It is used independently or together for PHP application development. As a collection of high quality independent building blocks, eZ Components will both speed up development and reduce risks. An application can use one or more components effortlessly as they all adhere to the same naming conventions and follow the same structure. All components require atleast PHP 5.2.1.

10. Fusebox

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.

11. PRADO

Prado

PRADO is a component-based and event-driven programming framework for developing Web applications in PHP 5. PRADO stands for PHP Rapid Application Development Object-oriented.

What does PRADO require?

The sole requirement to run PRADO-based applications is a Web server supporting PHP 5.1.0 or higher. PRADO is free. You can use it to develop either open source or commercial applications.

12. Seagull

Seagull

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.

Many popular PHP applications are already seamlessly integrated within the project, as are various templating engines, testing tools and managed library code. If you’re a beginner, the framework provides a number of sample applications that can be customised and extended to suit your needs. If you’re an intermediate or advanced developer, take advantage of Seagull’s best practices , standards and modular codebase to build your applications in record time.

Once your development cycle is complete, use Seagull’s features for deploying and maintaining your apps locally and remotely. Check out the friendly and active Seagull community and see if Seagull’s a good fit for you.

Features:

Check out the screenshots page to see Seagull in action. Or compare the features list with your current framework/CMS. Seagull offers the following key features:

13. PhpOpenbiz

PhpOpenbiz

Want to build a data centric business application without dirty code – PhpOpenbiz (Openbiz) is the solution! OpenBiz is a PHP application framework for professional IT developers and consultants to build web-based enterprise applications. Key features includes:

14. WASP

What is WASP?

WASP is a powerful web application framework built on PHP 5. WASP strives to allow web developers to make great applications with more fun and less code, but in the familiar playground of PHP.

Why use WASP?

WASP was written from the ground up in pure Object Oriented PHP5. WASP fully utilizes all of the enhancements made to PHP in version 5.

This means you use less code to create enterprise class applications.
This isn’t your hacker’s PHP.

15. WACT

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.

WACT emphasizes writing secure web applications. See Web Application Security for more information.

16. PHPDevShell

PHPDevShell

PHPDevShellserves as a UI “sea shell like” for developers to integrate or develop their applications within, giving the developer an immediate UI advantage of most required web application functionaries.

Features:

PHPDevShell features a number of great pre-developed components. Unlike most other frameworks where power was concentrated on the backend, PHPDevShell has concentrated on a balance providing the developer both a backend and a frontend ui.

Some pre-developed components include;

Backend providing basic development help with:

17. DIY

DIY is an open-source lightweight web application framework based on object-oriented PHP 5, MySQL, and XSLT. It is fully object-oriented and designed following the MVC architecture and REST design principles. The idea behind it is not to reinvent the wheel but instead to combine existing and proven technologies in a convenient and effective way.

The DIY Framework is a compact class library which can be extended and included by user applications. It puts few restrictions and gives flexibility. In contrast, most of the current web application frameworks are designed inside-out: they define the general structure and only allow your application to fit within their constraints.

For the same reasons, the framework does not contain plugins, scaffolding, routing, AJAX, widgets or other buzzwords. We see them as helper applications at best, not as parts of the framework itself. No frills are included (hence the name) — just precise control over your sever-side code.

Because of the framework’s nature, the following descriptions of architecture and file structure should be seen merely as guidelines for applications. They are also used in the included sample files.

Using the DIY Framework, not a single line of SQL or HTML needs to be hardcoded, constructed “by hand” or mixed with the PHP code. Almost no URL hacking or chopping is needed. The UTF-8 encoding is used exclusively.

The framework exploits PHP 5’s features such as more advanced object model, type hinting and class autoloading. HTTP request, response and session data is accessed via Java servlet-style OO wrappers. The framework has been straightforwardly ported to Java.

It has been successfully used in several small to medium production solutions and is currently used to build a large community-based social website.

18. 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:

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

19. Ambivalence

Ambivalence is a Model-View-Controller framework for PHP web development. Based on the Java-based Maverick project, Ambivalence also offers clean MVC separation and an XML sitemap. Ambivalence provides an optional service to authenticate and enforce access controls upon users, based on the JBoss implementation of the J2EE Java Authorization and Authentication Service (JAAS).

Core features include:

20. ATK Framework

ATK

ATK is a business framework. It is written in PHP, and allows you to build web applications with minimal amounts of code. The only code you write is business logic.

The framework is particularly useful for creating business applications; to manipulate data. CRM, HRM, ERP are all area’s where ATK can be used to build custom applications with minimal effort. Check the demo to see examples.

21. Canvas

Canvas is an open-source web application framework built with and for PHP5. Canvas employs the model-view-controller (MVC) design pattern, as well as abstracting database interaction with an object-relational mapping (ORM) model that presents data in a database as real world objects.

Canvas is in active development at Clayton State University’s Office of Information Technology and Services department The HUB. The framework is currently at version 1.1, but has many more releases planned and under way.

The framework was developed out of a need for a simple and common way for the entire department to develop web applications with rapid ease. A great deal of inspiration was pulled from Ruby on Rails and the simplistic beauty it provides the Ruby community. The goal for the design of the system was semantic simplicity and beauty. Agile development methods were employed to enhance the system as much as possible, particularly the “don’t repeat yourself” principle, orthogonality, decoupled design, and others.

The framework uses MySQL as the default relational database engine and Smarty as the default templating system, but is easily modified to use other databases and templating systems.

22. Chisimba

Chisimba is a Web 2.0 enabled rapid application development framework for creating web applications that are platform independent, browser independent, XHTML compliant, and can use a number of common databases. The framework is written in PHP5 using the model-view-controller paradigm, implemented via a modular architecture. Chisimba has an API that can be used by other applications over the Web, and it is Free Software licensed under the GNU GPL.

23. Orinoco Framework

The Orinoco Framework is an open source, object-oriented, full-stack web framework implemented in PHP and released under the MIT License. The framework follows the Model-View-Controller architecture and implements the Model 2 design paradigm. Like any other MVC frameworks, Orinoco Framework allows developer to create web applications in less codes and easily maintainable modules.

24. Ash.MVC

ash MVC

ash.MVC is a simple PHP programming framework proposed by Ash. The basic approach of this framework is to adopt a middle-path approach between faster development cycle, and a robust and scalable application. Moreover, the schemes proposed in the framework stick to the line of simplicity all along.

While encountering this new framework, ash.MVC, one may wonder with various questions, like:

  1. Do we need a framework at the first place?
  2. Why do we need another framework when there are numerous ones available?
  3. Why do we use MVC design pattern for this framework?

All the above questions have been addressed in the FAQs page.

The framework revolves round the concept of MVC design pattern as expected. There are four elements: 1. web browser, 2. Controller, 3. Model, and 4. View. These four elements interact with one another to establish a data-flow that is initiated by HTTP Request from client browser, and is successfully terminated with the receipt of HTTP Response at the client browser.

25. Studs

Studs began simply as a port of Apache’s Jakarta Struts MVC Framework to PHP, though it has turned out to be decidedly more. I started this project to study the internals of J2EE web applications and then to bring these design concepts into the PHP environment. Now it is time the see if the code lives up to this challenge.

Studs Workflow DiagramThe primary goal of this project, apart from being a road tested implementation of the MVC pattern for PHP, is to provide a learning platform for developers looking to give J2EE a try, while at the same time providing a comfortable PHP environment for those people familiar with Java Servlet technology. One way Studs manages this neutral ground is by relying on many of the standard deployment descriptors used in Java Servlets and Struts, including such files as web.xml, struts-config.xml and taglib.tld. By achieving this level of compatibility, existing tools can be leveraged to help develop applications in this environment.

That’s it a total of 25 OpenSource PHP Framework I’ve found. If ever you have any suggestions or addition just leave a comment.

Related Post

If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.

Comments
  1. » 25 OpenSource PHP Framework

    30 Oct 2008 at 9:42 am

    [...] PHP Framework nowadays is getting more popular to web application developers who uses PHP as their main language. 25 OpenSource PHP Framework [...]

  2. insic2.0

    30 Oct 2008 at 10:10 am

    oopss! I forget to include CLIFramework. You can check it here http://cliframework.com/.

  3. Ryan

    30 Oct 2008 at 10:23 pm

    Nice list. I think you missed to include Drupal Framework.

  4. flue_ex

    31 Oct 2008 at 5:41 am

    Try have look to Nette framework (http://nettephp.com). Documentations is only in check language, for now. But some examples can U tell more about.

  5. [...] Link : 25 Open Source PHP Framework [...]

  6. SilverStripe

    01 Nov 2008 at 5:31 pm

    Thanks for the mention—having just won ‘most promising’ category at the packtpub.com awards, it’s been a busy few days of traffic and blog mentions :)

    Would be great to see a comparison of what you see as advantages of various options are, e.g. SilverStripe is both a framework and a CMS with tight integration between them and it’s always interesting to see understand external perspectives and opinions.

  7. insic2.0

    03 Nov 2008 at 12:23 am

    Its my great pleasure Sigurd. Silverstripe is my favorite CMS. And yes im really glad that you won and its not really surprising because i know it from the start that silverstripe is the winner. :)

  8. EllisGL

    03 Nov 2008 at 9:53 am

    The issues I have seen with most PHP frameworks are these:
    1.) Lack of documentation
    2.) Lack of real tutorials (Clear and insightful). Video tutorials don’t count.
    3.) Too many / Too few items in the frame work. Sometimes the “too many” issue is the same as the “too few”. Leaving out important items, but giving you all the neat shiny things.
    4.) Missing a basic foundation. Basically some frameworks make you create a bootstrap. Usually this is something simple, usually looks the same per project that uses the framework, should just be included in the archive. (OK – this is a really lazy thing).

  9. foobarph

    05 Nov 2008 at 10:36 pm

    i personally use code igniter and it worked on my part.

    cake php and other framework seems to be good as well but it took me a long time to understand how i should use them so i switched to code igniter and poof, i used it.

    http://greenfieldsintl.com.ph/index.php?page=jobs

    click on the application form for example. it’s my first try so i hope you will like it somehow. :D

  10. Keith

    06 Nov 2008 at 3:14 am

    Fantastic article and very indepth. Thanks for taking the time to research and write up these frameworks!

  11. eremit

    10 Nov 2008 at 11:17 am

    Hi Insic,

    thanks for the list and a great post, as well as great blog at all.

    regards

  12. Hugo

    15 Nov 2008 at 7:45 am

    Nice post ! My favorite framework is symfony for all the provided features like DB abstraction layer (Propel and Doctrine are supported), the admin generator, the CRUD interface, the I18N helpers, the Ajax helpers…

  13. awake

    17 Nov 2008 at 10:35 pm

    There are too many darn frameworks for PHP (probably a good thing I guess, but not for guys like moi)

    Which one of these has a lot of goodies that take care of things developers do all the time (e.g. Membership, CRUD)

  14. jedrek

    29 Dec 2008 at 2:49 pm

    Hello,

    I think You forget or You don’t know Kohana PHP

    Website: http://kohanaphp.com/

    Framework like CI.

  15. Suhas Dhoke

    31 Dec 2008 at 7:35 am

    Hi insic.

    Nice list, as well as nice blog.
    Keep writing…

    Wishing all of you … a very Happy New Year…!!!

  16. Ivan Penev

    19 Feb 2009 at 4:58 am

    Hi insic,

    you may update the QPHP.NET framework as I changed the url to http://phpwork.org

    Now it becomes part of the Work family set of frameworks including also http://javawork.org and http://flashwork.org

  17. Shane Sponagle

    19 Feb 2009 at 7:58 am

    Great article, I enjoyed reading it :)

    However, just one thing. Why include SilverStripe, it seems out of place in this article. Then that leads to the next question, why not include MODx or Drupal. Both have extensive frameworks. And in the case of MODx it allows much more flexibility and control over the aoutput than the SilverStripe framework.

  18. insic2.0

    19 Feb 2009 at 8:07 am

    @Shane Sponagle  Silverstripe is both a is both a framework and a CMS. you can read it in silverstripe comment itself in this post. Maybe I need to mention Sapphire as the framework name of silverstripe.

  19. insic2.0

    19 Feb 2009 at 8:30 am

    @Ivan Penev Thanks for the update. Link updated.

  20. badlands

    22 Feb 2009 at 6:44 pm

    no mention of Kohana Framework?  if you like Code Igniter, you must have a look at <a href=”http://www.kohanaphp.com”>www.kohanaphp.com</a>

  21. JORGE LINARES

    26 Feb 2009 at 1:27 pm

    Great article, I’ll be trying Silverstripe right now and see how good it is. I’ve also tried phpcake but didn’t like it that much, and synfony is really my favorite so far.

    Keep up the good work!

  22. JORGE LINARES

    26 Feb 2009 at 1:34 pm

    Just one thing I noticed while trying to check out the silverstripe framework. The link you posted here is linking to their main page which it’s only their services .com page.

    The original page for their CMS/Framework page is located at http://silverstripe.org/ (.org)

    That’s probably why Shane Sponagle said it seems out of place in this article.

    :)

  23. Arnold Gamboa

    27 Feb 2009 at 12:43 am

    It’s been mentioned enough here. We’re currently using KohanaPHP as our primarily framework. It’s probably one of the best one in the pool right now.

  24. Adam Elleston

    02 Mar 2009 at 5:58 am

    MODx is a great CMS with a flexible API and event handling system which can then turn this great CMS into a great framework. I would strongly suggest giving it a try.

  25. insic2.0

    02 Mar 2009 at 8:24 am

    @Adam Elleston Thanks I will check MODx.

  26. ネキ - neki chan

    11 Mar 2009 at 4:29 am

    mm.. to much!
    i confused what i have to learn first :(

    but thanks for the info :D really useful!

  27. Mar-22-2009 php links | w3feeds

    22 Mar 2009 at 1:57 am

    [...] 25 OpenSource PHP Framework | INSIC 2.0 Web Development & Design Blog [...]

  28. david

    31 Mar 2009 at 4:43 am

    If you like qphp you will like atomik framework

  29. Donald Organ

    01 Apr 2009 at 11:00 pm

    Take a look at Andromeda http://www.andromeda-project.org

  30. [...] 25 OpenSource PHP Framework [...]

  31. awake

    11 Apr 2009 at 12:16 am

    Yii Framework guys… Thatz my favourite

    http://www.yiiframework.com

    It steals the best concepts form PRADO/ASP.Net, Joomla, and other cool frameworks.

  32. Descargar

    24 Apr 2009 at 12:32 am

    Thank you!

    Good reviews, I also found 1 or 2 missing here at: http://phpmagister.com/php/best-php-frameworks

  33. Peter

    20 May 2009 at 3:39 pm

    I use lion framework

  34. Web Design Pakistan

    25 May 2009 at 1:12 am

    This is very helpful and informative

  35. Topics

    07 Jun 2009 at 2:41 pm

    Thank you very

Leave a comment

(required)

(required)