CodeIgniter is an open source framework for creating full-featured PHP-based web sites and applications. It is based on the MVC (Model-View-Controller) architecture and is compatible with standard shared hosting accounts, various PHP versions (including PHP4 and PHP5) and configurations. Plus, you don't have to use a command line. URLs are mapped to a particular function within a controller by means of routing. CodeIgniter also supports scaffolding which represents an automated way of generating views based on the models. Although scaffolding is designed for simple prototyping, CodeIgniter takes it a step further by requiring a keyword in the URL in order to access it at all. This modern MVC framework renders the creating of PHP applications much easier. A large portion of the work, such as loading libraries, getting data from the model, rendering the view, etc., is done inside the controller. CodeIgniter provides classes for FTP, email, file uploading, XMLRPC, zip encoding. You are not required to give names to you database tables or to name your models after your tables.
CodeIgniter has a very small footprint - it is just about 2 MB, including the documentation which you can delete later. Plus, it works with all servers and web hosting accounts that provide PHP version 4.3.2 or newer. CodeIgniter requires a database for most web applications. Current supported ones are MySQL (4.1+), MySQLi, MS SQL, Postgres, Oracle, SQLite, and ODBC.
To install CodeIgniter, you need to download and unzip the package and then upload its folders and files to your server. Normally, the index.php file will be in your web root folder. Once uploaded, you need to open the application/config/config.php file with a text editor and set your base URL. If you intend to use encryption or sessions you have to set your encryption key too. In order to set up a database for your CodeIgniter PHP framework you need to open the application/config/database.php file with a text editor and set your database using the settings provided with your web hosting account. You can rename the system folder to something more private so as to increase security by hiding the location of your CodeIgniter files. After you rename it you need to open your main index.php file and set the $system_folder variable at the top of the page with the new name you have chosen.
CodeIgniter is based on the MVC architecture whose main point is that the views have to be separated from the back end of a given application. The back and the front end, on the other hand, are connected using controllers. The separation between the front and the back end of a web application makes the code readable and easier to understand.
Official website - http://codeigniter.com/
Download URL - http://codeigniter.com/download.php
Manual URL - http://codeigniter.com/user_guide/