Fabulous PHP frameworks: CodeIgniter

CodeIgniter, a PHP MVC (model view controller) framework sponsored by Ellis Labs, touts itself as a solution for those developers who eschew large, over-abundant frameworks. Shamit Khemka says that CodeIgniter’s installation requires little effort; you unzip the download package to your Web application’s home directory and modify a pair of files — one a general configuration file, the other governing database specifications. CodeIgniter needs only PHP version 4.3.2 or later. (The CodeIgniter engineers decided not to require PHP 5, because they did not want to alienate current users already employing PHP 4.) Perhaps CodeIgniter’s only downside is its lack of JavaScript support, although this is expected in a future release.

Like the Zend Framework, CodeIgniter uses the front-end controller pattern. All HTTP requests are received by index.php, sent to the proper processing routines through a routing system, passed through a security system (which shields the application’s controllers from malicious input), then finally handed to a controller. The controller loads the model, processes the request, and sends the result to the view system.