16 PHP Frameworks To Consider For Your Next ProjectBy Sean P Aune
Why spend valuable time coding everything by hand? Using a framework is a great way to save time and effort on your next project—you’ll have a firm foundation to build upon, there will be pre-built modules to perform tedious coding tasks, and if you’re a learner, it’s a great way to learn about good coding practice. PHP’s massive popularity means that developers have a wide variety of frameworks to choose from. We’re sure you can find one amongst these 16 to meet your needs.
Agavi: This PHP 5-based framework started off as a fork of the popular Mojavi project. While it can be used as a web site construction kit, its primary focus is on building fully-fledged applications.
Akelos: Akelos is a PHP port of a Ruby on Rails framework for building web applications. It avoids complex configurations, making it ideal for use on simpler web servers. There’s a healthy community around this one!
CakePHP: The very well-known CakePHP is easy for coders of all skill levels to use. It’s based on the same principles that guide Ruby on Rails, and its heavy focus on rapid deployment methods make it a great choice for developers who are squeezed for time (see SitePoint’s beginner’s CakePHP tutorial to get started).
CodeIgniter: EllisLab’s CodeIgniter has won wide praise for its small footprint and speed, and has become a favorite amongst many developers. There’s extensive documentation and a large community of users to help you out.
eZ Components: OK, so we’re stretching the definition of framework here. eZ Components, as the name suggests, is a library of individual components for common tasks. If you’re familiar with the ezPublish CMS, you might have seen some of these components before!
Fuse: Fuse is based on Ruby on Rails and CakePHP, but has had many features added by the development team to make the most stable platform they could. There are frequent updates—development on version 2.0 is underway!
Horde: This mainstay of the PHP framework world grew from the Horde webmail and groupware suite. If you’re a developer who speaks a language other than English, you may be interested in the fact that the framework is designed specifically to be localization-friendly.
Kohana: Kohana, originally based on CodeIgniter, puts its focus on being small, fast, and secure.
PHP on TRAX: A PHP framework based on Ruby on Rails (Get that name? Nudge nudge!) that is focused on building database-backed web applications based on the MVC structure. You’ll find a healthy developer community, demos, and even screencasts.
PHPOpenBiz: This PHP framework claims to have business development in mind, though we’re not sure how it is that other frameworks aren’t suitable for that purpose.
Qcubed: Qcubed is a fork of the Qcodo framework which had remained dormant for some time. It’s back, and its focus is on rapid prototyping. You’ll find fun tutorials on the site, and an enthusiastic new set of developers.
Seagull: This well-established PHP framework is easy to pick up for developers of any skill level. If you’re a beginner, you’ll find many pre-built apps to examine and extend, and there’s something for experts too—cash bounties are offered for improvements to the code.
Symfony: The ever-popular Symfony is directed more at enterprise application development, and it may have some trouble with shared hosting solutions as they lack a PHP accelerator. This is definitely more of an advanced developer framework than some of the others out there.
WACT: Short for Web Application Component Toolkit, WACT emphasizes the need for frequent code refactoring, unit testing, and good security.
Zend: Zend is focused on Web 2.0 style applications. It’s simple to use APIs from sites such as Google, Flickr, Amazon and so on (check out the SitePoint Zend tutorial for more on this). With a massive user base, you’re sure to find plenty of support and advice around the Web.
ZooP: A mature PHP framework for beginners and advanced users alike, ZooP focuses on being lightweight and easy to learn. Features include easy use of PEAR modules, the prototype Ajax framework and stacks of documentation.
Of course there are many more frameworks out there—users of our PHP Application Design Forum drop by every day with discussions of what they’re working on. What’s your favorite PHP framework and why?