Model-View-Controller
CodeIgniter は Model-View-Controller パターンに基づいています。 MVC はプレゼンテーションからアプリケーションロジックを分離するためのソフトウェアアプローチです。実際には、PHP スクリプトからプレゼンテーションが分離されるので、Web ページには、必要最小限のスクリプトだけを書くようにできます。
- モデル はデータ構造をあらわします。モデルクラスは多くの場合、 データベースから情報を取得、挿入、更新するメソッドを持ちます。
- ビュー はユーザに表示される情報です。ビューは通常は Web ページですが、 CodeIgniterでは、ヘッダやフッタなどのページの断片である場合もあります。また RSS ページや他のタイプのページである場合もあります。
- コントローラ はモデルとビュー、 それから、HTTPリクエストを処理し Web ページを生成するために必要とされるリソース、これらを仲介しながら 動作します。
CodeIgniter においては、モデルは必ずしも必要ではありません。ですので MVC に対してややルーズなアプローチをとっているといえます。 余計な分離が不要な場合や、モデルをメンテナンスすることが希望より複雑であることがわかった場合には、 モデルを使用せず、最低限、コントローラとビューを利用してアプリケーションを構築できます。 さらに、CodeIgniter では既存のスクリプトを組み入れることもできるだけでなく、あなたが一番理解しやすい方法でプログラミングするために、 システムのコアライブラリを開発することさえできます。