+ +
+

Model-View-Controller

+

CodeIgniter is based on the Model-View-Controller development pattern. +MVC is a software approach that 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 your data structures. Typically your model +classes will contain functions that help you retrieve, insert, and +update information in your database.
  • +
  • The View is the information that is being presented to a user. A +View will normally be a web page, but in CodeIgniter, a view can also +be a page fragment like a header or footer. It can also be an RSS +page, or any other type of “page”.
  • +
  • The Controller serves as an intermediary between the Model, the +View, and any other resources needed to process the HTTP request and +generate a web page.
  • +
+

CodeIgniter has a fairly loose approach to MVC since Models are not +required. If you don’t need the added separation, or find that +maintaining models requires more complexity than you want, you can +ignore them and build your application minimally using Controllers and +Views. CodeIgniter also enables you to incorporate your own existing +scripts, or even develop core libraries for the system, enabling you to +work in a way that makes the most sense to you.

+
+ + +