Fast. Copy all the framework files to the web server and it’s ready
Lacking compared to Zend Framework and Code Igniter
Most of the components are geared towards forward facing web apps.
Active Record pattern + ORM
flexible in extending the functionalities.
Rails-esque validation.
It happens in the Model and we pass in an array of criteria of the validation and call a function validate().
The slowest of the three.
14mb of memory usage per page.
medium. Very rail-esque, having an experience with Rails will speed the learning tremendously.
Once a developer get the conventions down, it is actually easy.
MIT License
yes.
CakePHP uses a array style database configuration but requires a class to be created for new configurations but loading/writing configuration is as easy as calling a single function.
CakePHP runs a single Object style which inherits the various settings/aspects of the program.
Little static method calls are used and has a lot of "magic" that makes assumptions and fills in gaps for your convenience.
I have an experience in CakePHP. Tablefy.com (this website) is built using CakePHP.
Very familiar.
IRC: CakePHP
google groups: http://groups.google.com/group/cake-php
when it is done
Zend Framework
requires the creation of a bootstrap file with all the initialisation
The Zend Framework has very detailed documentation with a lot of examples
ZF has a massive number of classes and components.These are well documented.
ORM using both the Table Data Gateway and the Row Data Gateway
ZF is simply a collection classes and as such any file or folder can be placed anywhere as long as the location is added to the bootstrap file.
The Zend_Validate component provides a set of commonly needed validators.
Validator is a separate class and the class is added to the data (like a filter)
The Zend Framework is about half as fast as CodeIgniter.
Steeper learning curve, the documents really help. Robustness comes with a price.
BSD-style
yes. Zend_Tool (1.8 version)
Zend uses a app.ini file that is parsed by the system.
It doesn't use php syntax instead opts for a traditional desktop application style configuration and it doesn't show room for expansion.
Zend follows more traditional programming steps of "include and
instantiate" for its components, and requires that basic Classes be written specific to your application so that you may extend them to to ensure class propagation.
Experience: Hello world app.
1.8 will make it easy in terms of learning curve, but it will be released late April 2009 and it is RC1.
I would really like to try the framework for kicks and giggles :D
IRC: zftalk
Paid: http://www.zend.com/en/services/support/
- minor releases every 3rd month
- mini release about every second week
- Major releases all 1-1.5 years
Code Igniter
Fast. Copy all the framework files to the web server and it’s ready. Zero configuration.
The documentation is very well-structured and organized although it is a bit less detailed
Has a large number of components.
Active Record pattern
CI is very flexible allowing almost all defaults to be modified.
It can even run Zend modules inside Code Igniter.
Data validation in CodeIgniter is handled via a validation class. Very rigid, only allows to be run at Controller level.
CI has about double the performance of the Zend Framework.
2mb of memory usage.
Easiest learning curve.
New BSD
no
CodeIgniter uses simple file based array configuration saving.
Once any configuration file is loaded into the system it can be access with a simple function.
CodeIngiter is entirely object oriented and runs entirely off of a core CodeIgniter object (or "$this", in whatever context).