CakePHP
File:Cake-php.png | |
Developer(s) | Cake Software Foundation |
---|---|
Stable release | 1.1.13.4450
/ February 4, 2007 |
Repository | |
Type | Web application framework |
License | MIT License |
Website | www.cakephp.org |
CakePHP is a web application framework written in PHP, modeled after the concepts of Ruby on Rails.
History
Development of CakePHP started in April 2005 by Michal Tatarynowicz.
Michal had started to play around with the Japanese-origin scripting language Ruby using the development framework developed by 37signals called Ruby on Rails and really liked the experience. He found it unfortunate that Ruby on Rails, logically, only works with Ruby and that Ruby wasn't widely installed on webservers.
But like he said [1]:
But after playing around with Ruby on Rails you don't want to develop software the old way. Rails do all the paperwork involved with connecting to the database, setting up the templating, linking code to URLs in a meaningful way, and so on. You write the application business logics and fire it up. Very fast, very efficient programming, saves a lot of unnecessary bother.
At the time, and until the day of this writing, many attempts have been made to copy Ruby on Rails in PHP and within days CakePHP was quickly criticized[2] for being yet another copy.
It is at this stage that a crucial difference in design philosophy was brought to light through a now somewhat famous response of "Pies" (Michal Tatarynowicz) on that very post:
While it’s difficult to copy Rails in PHP , it’s quite possible to write an equivalent system. I like the terseness of Ruby code, but I need the structure that Rails provides, how it makes me organize my code into something sustainable. That’s why I’m ripping off Rails in Cake :)
CakePHP was to be not an identical copy of Ruby on Rails but a setup similar in design: the concepts and ideas of Ruby on Rails where permitted and needed, the strength of PHP where and when best used.
Features
Like Rails, CakePHP makes it easier for the user to interface with the database with Active Records. It also encourages use of the model-view-controller architectural pattern.
![]() | This article contains promotional content. |
- Compatible with PHP4 and PHP5
- Integrated CRUD for database and simplified querying
- Request dispatcher with custom URLs
- Templating (PHP syntax with helper methods)
- View Helpers for AJAX, Javascript, HTML Forms
- Website directory independent
- Built-in Validation
- Application Scaffolding
- Access Control Lists
- Data Sanitization
- Security, Session, and Request Handling Components
- View Caching
Project status
There is a stable version 1.1. Development on version 1.2 is ongoing.
External links
- Official website
- The Bakery - Articles, Tutorials and Code for CakePHP
- Cook up Web sites fast with CakePHP - DeveloperWorks Series from IBM on CakePHP
- Cake PHP, - an active Google Group
Footnotes
- ^ "CakePHP Introduction". Retrieved 2007-03-13.
- ^ "Rails Clones: Bloodsuckers or Useful Drones?". Retrieved 2007-03-13.