Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

A Guide to PHP Frameworks

DZone's Guide to

A Guide to PHP Frameworks

· Web Dev Zone ·
Free Resource

Jumpstart your Angular applications with Indigo.Design, a unified platform for visual design, UX prototyping, code generation, and app development.

The proliferation of PHP frameworks has led to some confusion over the last couple of years and more than a few flame wars.  The purpose of this guide is to try and clear up some of the confusion and provide a proper listing of some defining features in the most popular PHP frameworks.  If you would like any additions or revisions, post a comment with some supporting links and the list can be modified.  We want this to be a useful DZone community resource.  Common features between all of these frameworks have been omitted (for example, all of these frameworks are MVC-based)

Zend Framework

  • Represents an extended set of PHP libraries that can be integrated and used with most of the offered PHP frameworks.
  • Slight Learning Curve
  • Simple, extendible CRUD creation
  • Optional MVC and flexible conventions
  • Configuration: PHP Array, XML, or INI files
  • Perhaps the most popular PHP framework available
  • Supports PHP 5

CodeIgniter

  • Offers query builders and database manipulation classes, but has no built-in ORM support
  • No PEAR packages or server modifications required
  • Installed by uploading files to a directory
  • Large community plus extensive documentation and tutorials
  • Easier to extend and understand than some of the more elaborate frameworks
  • Built-in template engine
  • Supports PHP 4 and 5 (Maintaining PHP 4 support has its pros and its cons)

CakePHP

  • Expansive built-in libraries including helpers for generating RSS feeds and HTML elements
  • Easy CRUD database interaction
  • Heavier than CodeIgniter and Kohana.
  • A more strict and structured approach to MVC and naming conventions
  • Little to no configuration required to run
  • Supports PHP 4 and 5

Symfony

  • Full-stack framework
  • Uses the command-line to run configuration commands and create applications
  • Steeper learning curve than some frameworks
  • Good AJAX and JavaScript helpers
  • Supports PHP 5

Yii

  • Intended for developing large-scale Web applications
  • Written in strict OOP
  • Has built-in support for both authentication and authorization.
  • Claims to have very high performance
  • Complex syntax for declaring model relationships, but with powerful features including named scope
  • No built-in unit testing support
  • SOAP support
  • Has jQuery bundled; jQuery-based AJAX support
  • Supports PHP 5

Kohana

  • Fork of CodeIgniter
  • No dependencies on PECL extensions or PEAR libraries
  • Has a cascading file system
  • Built in-template engine
  • No unit testing support
  • Has built-in Auth module and a number of third-party Auth and ACL libraries
  • Supports PHP 5

Akelos

  • Multilingual models and views
  • Dojo Rich Text Editor
  • Automated locale management
  • Clean separation from HTML and Javascript using CSS event selectors
  • Built in-template engine
  • Supports PHP 4 and 5

PRADO

  • Component-based and event-driven programming framework
  • Components are a combination of a specification file (in XML), an HTML template, and a PHP class.
  • PRADO components are highly reusable
  • Built in-template engine
  • Supports PHP 5

ZooP

  • Features GuiControls (a PHP implementation of .Net’s webcontrols)
  • Smarty-based view layer and templating system
  • SMTP template-based email sending
  • Built in-template engine
  • Supports PHP 4 and 5

Take a look at the Indigo.Design sample applications to learn more about how apps are created with design to code software.

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}