CodeIgniter is used to build dynamic websites with PHP. It is based (in a loose sort of way) on the popular MVC (Model-View-Controller) development pattern and works with typical shared hosting accounts, various versions of PHP and various configurations. Also, you don’t need to go via the command line to use it. URLs are mapped to a specific function in a controller using routing.
CodeIgniter also allows for the use of scaffolding, which offers an automated way of producing views based on the models. Despite the fact that scaffolding is primarily meant for simple prototyping, CodeIgniter takes it one step further by insisting there is a keyword in the URL before access is given. It’s a contemporary MVC framework which makes it much easier to create PHP applications.
The majority of the work, including loading libraries, retrieving information from the model, rendering the view, etc., falls to the controller. CodeIgniter offers classes for FTP, email, file uploading, XMLRPC, and zip compression. There is no requirement to name your database tables, and neither do you need to give your tables the same names as your models.