コアクラス
この章では以下のコアクラスについて説明していきます。
sys/core/CodeIgniter.php
フロントコントローラ(index.php)は、クライアントからのリクエストを受け付ける窓口です。
そして、フロントコントローラは受け付けたリクエストをフレームワークの中核である「CodeIgniter.php」
に処理を託します。
仕事を任された「CodeIgniter.php」は、それぞれの得意な分野を持つ部下達(コアクラス)を順番にロードして、
ユーザが開発したコントローラやモデルの処理をサポートする機能を提供、または準備します。
CodeIgniter.phpは以下の順番でコアクラスをロードしていきます。
- CI_Benchmark
- CI_Hooks
- CI_Config
- CI_UTF8
- CI_URI
- CI_Router
- CI_Output
- CI_Security
- CI_Input
- CI_Lang
- CI_Controller
- CI_Loader
- CI_Model
Webアプリケーションの処理時間を計測する機能とメモリ使用量の表示機能を提供します。
フレームワークが処理するプロセス(手順)の合間で実行させるフックプログラムを管理します。
設定ファイルを利用できるように準備します。
文字コード「UTF-8」での処理ができるように準備します。
URIパスの管理を行いURIルーティングに必要な情報を初期化します。また、いくつかの機能をWebアプリケーションに提供します。
URIルーティングを行い、ユーザが開発するコントローラ・アクションメソッドを決定します。また、いくつかの機能をWebアプリケーションに提供します。
Webアプリケーションのレスポンス・出力機能を提供します。また、キャッシュの機能も提供します。
セキュリティに関する機能をWebアプリケーションに提供します。
クライアントから送信されるHTTPヘッダやリクエストパラメータを管理し、Webアプリケーションに入力情報を提供します。
マルチ言語のテキストを管理し、Webアプリケーションのマルチ言語をサポートする機能を提供します。
コントローラの基底クラスです。ユーザが開発するコントローラはこのクラスを拡張します。
CI_Controllerクラスからロードされ、ユーザが開発するコントローラから各コアクラスの機能を利用できるようにします。
モデルの基底クラスです。ユーザが開発するモデルはこのクラスを拡張します。