CodeIgniter primarily uses the Model, View, Controller (MVC) approach to application design and development. It tries to separates application logic from presentation. In practice, it permits your web pages to contain minimal scripting since the presentation is separate from the PHP scripting.
- The Model represents data structures. Typically, your model classes will contain functions that help you create, read, update and delete information from your database.
- The View is the user interface. It presents data or output from the model, controller and itself to the user. It is usually a web page which can also be page fragments like header, menu and footer.
- The Controller is the application logic and serves as an intermediary between the Model, the View, and any other resources needed to process the request and generate a web page.