PHP: MVC Based Popular Framworks

  1. PHP on Trax
    1. Strictly follows Ruby on Rails syntax and functionality but written in php5.
    2. Originally called PHP on Rails.
    3. It 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.
    4. URL ~ http://www.phpontrax.com/
  2. Agavi
    1. Its an open-source, LGPL licensed MVC framework for creating applications written using PHP5.
    2. Agavi is a Web Application Framework for PHP 5. While it lies in the nature of a framework to simplify the application development process, Agavi won’t do that at any cost. The primary goals are flexibility, cleanliness and structure. We won’t find HTML Form helper methods in Agavi (because they aren’t necessary, it has something better, more on that later), and it use XML configuration files because it believe that XML offer better structuring abilites than alternatives such as YAML.
    3. Every Agavi Application consists of one or more Modules. Each Module contains one or more Actions. Actions contain logic code and are totally independent of the way you’re using them, be it through a normal web application, or via a SOAP interface – the code remains exactly the same, you usually never touch them again once they are finished.
    4. URL ~ http://agavi.org/
  3. Akelos PHP Framework
    1. Its a Ruby on Rails port to PHP4/5.
    2. 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:
      1. Write views using Ajax easily
      2. Control requests and responses through a controller
      3. Manage internationalized applications
      4. Communicate models and the database using simple conventions.
    3. URL ~ http://en.wikipedia.org/wiki/Akelos_PHP_Framework
  4. BareBonesMVC
    1. A one-file, no-configuration, MVC framework for PHP5.
    2. http://code.google.com/p/barebonesmvc-php/
  5. CakePHP
    1. It webapplication framework modeled after the concepts of Ruby on Rails.
    2. CakePHP is a free open-source rapid development framework for PHP. Its a structure of libraries, classes and run-time infrastructure for programmers creating web applications originally inspired by the Ruby on Rails framework.
    3. http://cakephp.org/
  6. CodeIgniter
    1. 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.
    2. CodeIgniter is an Application Framework
    3. CodeIgniter is written to be compatible with PHP 4.
    4. http://codeigniter.com/
  7. DragonPHP
    1. MVC2 Framework for PHP 5.
    2. Key Features
      1. Request Dispatcher
      2. Session Management
      3. Page Controller
      4. Page Flow Routing
      5. Security
      6. Common Logger
      7. Validator (i.e. Form Validation)
      8. Dynamic Templating
      9. Modules
      10. Database Access
    3. http://www.dragonphp.com/
  8. Fusebox
    1. Framework for building ColdFusion and PHP web applications.
    2. The main features are
      1. A Fusebox application is made up of Circuits. A Circuit corresponds to a directory in your application. Within each circuit are one or more Fuseactions. A Fuseaction is a request handler. And finally, a Fuseaction does its work by executing one or more Fuses. Fuses are individual CFML templates such as display files.
      2. The framework uses XML configuration files to define the application settings as well as declaring what each Circuit does and how Fuseactions within each Circuit execute. There is a core set of XML grammar that is used to create these files.
      3. The framework is fully extensible via Plugins, which allow you to extend the core functionality without having to modify the core files. It also supports Custom Lexicons, which allow you to extend the XML grammar with your own tags. As a result, Fusebox is very flexible and can support a wide range of development needs.
      4. Fusebox does not force the Model-View-Controller (MVC) pattern or Object-Oriented Programming (OOP) on the developer. However, either or both of these development approaches can be used with Fusebox.
    3. http://fusebox.org/
  9. FUSE
    1. A powerful but easy-to-use PHP 5 Framework for MVC development
    2. FUSE provides a powerful application development engine that allows us to:
      1. Rapidly create a working Model/View/Controller structure to properly organize your application
      2. Model your database tables (often automatically) to provide application-level access to data without SQL.
      3. Offer fully functional create, read, update, and delete functions with only a few lines of code
      4. Create a user authentication (login/permissions/privileeges) scheme for your site with just a few lines of code
      5. Call PHP functions from Javascript via a custom AJAX implementation
      6. Route URIs, which eliminates the need for ugly query strings and can greatly assist with SEO
      7. Separate HTML presentation from application code with a powerful but easy templating engine. etc.
    3. http://en.wikipedia.org/wiki/Fuse_Framework
    4. http://www.phpfuse.net/
  10. KohanaPHP
    1. Kohana is a PHP 5 framework that uses the Model View Controller architectural pattern. It aims to be secure, lightweight, and easy to use. The main features are:
      1. Highly secure
      2. Extremely lightweight
      3. Short learning curve
      4. Uses the MVC pattern
      5. 100% UTF-8 compatible
      6. Loosely coupled architecture
      7. Extremely easy to extend
    2. http://en.wikipedia.org/wiki/KohanaPHP
    3. http://kohanaphp.com/home.html
  11. LightVC
    1. Lightweight PHP 5 Strict MVC Framework with decoupling of Model and other non-View-Controller essentials to promote code reuse.
    2. Features :
      1. Lightweight single-file view-controller framework.
      2. Allows usage of any model or ORM.
      3. Promotes code re-use.
      4. Highly configurable.
      5. Fast.
      6. PHP5 Strict.
    3. http://lightvc.org/
  12. MicMVC
    1. A simple framework for creating standalone MVC websites in PHP5 with RoR style models.
    2. micMVC does not require an application framework to be installed on the host computer as an application written using micMVC packages all the necessary framework code with the application.
    3. http://riftor.g615.co.uk/index.php?action=view&id=22
  13. Odin Assemble
    1. Small footprint PHP based MVC Framework. The Odin Assemble engine works with your web servers existing 404 handler to act as your “web-site.” Odin Assemble works behinds the scenes to create HTML responses that appear to be static HTML documents. Odin Assemble provides a layer of functionality nonexistent in traditional web servers.
    2. Odin Assemble was designed to work in a limited resource environment performance is healthy. For maximum performance it’s recommended you set $_page_cache_life in your config.inc.php file to between 360-600. If you have a web-site that has limited or no use of random “elements” then you can improve your web-site assemble time by increasing the $_page_cache_life value.
    3. http://www.odinassemble.com/
  14. phpHtmlLib
    1. MVC based OO framework compatible with PHP4 and PHP5 licensed under GNU LGPL
    2. phpHtmlLib is now an application development framework for developing OOP style web applications in PHP. The application framework supports an MVC style architecture, Ajaxable and Cacheable interfaces for developing rich client web applications. It still contains the set of PHP classes and library functions to help facilitate building, debugging, and rendering of XML, HTML, XHTML, WAP/WML Documents, and SVG (Scalable Vector Graphics) images as well as complex html Widgets .
    3. http://phphtmllib.newsblob.com/
  15. phpXCore
    1. A MVC design pattern based PHP content management framework compatible with PHP4 and PHP5.
    2. Main features are :
      1. Open-source
      2. MVC controller
      3. Compatible with PHP4 and PHP5
      4. Request dispatcher with good looking, custom URLs
      5. Use PEAR packages (http://pear.php.net)
      6. Fast, flexible templating (http://smarty.php.net)
      7. Easy AJAX integration (http://xajaxproject.org)
      8. JavaScript framework (http://script.aculo.us)
    3. http://www.phpxcore.org/
  16. PRADO
    1. A PHP 5 MVC framework.PRADO is a component-based and event-driven web application framework for PHP5. PRADO reconceptualizes Web application development in terms of components, events and properties instead of procedures, URLs and query parameters. PRADO is an open source project. PRADO stands for PHP Rapid Application Development Object-oriented.
    2. The design of PRADO was influenced heavily by ASP.NET and Borland Delphi.
    3. http://en.wikipedia.org/wiki/PRADO
  17. SilverStripe contains a fully fledged PHP 5.2 ORM/MVC Framework focused on building websites.
  18. Solar PHP 5 frameworkSolar is a PHP 5 framework for rapid application development. It is fully name-spaced and uses enterprise application design patterns, with built-in support for localization and configuration at all levels.
  19. OnPHP onPHP is the mature GPL’ed multi-purpose object-oriented PHP framework (plus c-module)
  20. Switch board with Routing PHP 5 MVC Framework with Routing.
  21. Symfony Framework PHP 5 MVC Framework.
  22. TinyMVC Framework Simple and lightweight PHP5 MVC (Model-View-Controller) framework.
  23. TYPO3 extension library lib/div PHP 4/5 MVC framework for TYPO3 extension development
  24. Qcodo is an open-source PHP 5 web application framework
  25. Zend Framework A PHP 5-based MVC framework.
  26. ZNF PHP5 MVC framework for enterprise web applications
  27. Zoop Framework A Mature PHP 4/5 MVC framework.
  28. Lion Framework An open-source PHP 5 framework with a push & pull MVC implementation

.