技術情報

PHPフレームワーク「Codeigniter」とは

PHPWebアプリケーションフレームワーク「CodeIgniter」について紹介します。

概要

「CodeIgniter」とは

CodeIgniter(コードイグナイター)は、Webサイト開発用のオープンソースPHPWebアプリケーションフレームワークです。

「高速」「軽量」「シンプル」「低い学習コスト」「高い自由度」を実現した人気のPHPフレームワークです。PHP学習がひと通り終わり、フレームワークに取り掛かる入り口として最適とされています。

基本説明

CodeIgniterは、学ぶことが少なく、自由度が高いため、PHPを知っていれば、簡単にウェブサービスを構築することができます。軽量フレームワークであるため、高速性も特徴です。

CodeIgniterでは、「Ruby on Rails」のように、Active Record(Query Builder)を用いてデータベースに接続します。MVC(モデル・ビュー・コントローラ)アーキテクチャパターンの利用が推奨されています。

経緯

2006年、CodeIgniter初回公開バージョンがリリースされました。

2011年、Google検索数による比較で、PHP主要フレームワーク(CakePHP、Zend Framework、Symfony)を抑えてCodeIgniterが最多となるなど、広く利用されています。

2014年2月、PHPフレームワークトレンドでは、世界的に見てCodeIgniterの人気がまだまだ1位とされています。

 

主な特徴

オープンソース

CodeIgniterはオープンソースライセンスであるため、商用サイト用であっても、無償で使用することができます。

軽量/高速

CodeIgniterのコアシステムは、小さなライブラリを少数のみしか使わないため、非常にスリムで大変高速に稼働できます。基本機能以外の追加ライブラリは、必要に応じてリクエスト時に動的に読み込まれます。

MVCモデル

CodeIgniterは、「Model(モデル)-View(ビュー)-Controller(コントローラ)アプローチ」を採用しています。

MVCは、ロジック機能とプレゼンテーション機能の分離を可能とします。 最低限のコードのみのテンプレートファイルを、開発者が利用して作業するようなプロジェクトなどで、特に効果を発揮します。

簡潔なURLを生成

CodeIgniterは、検索エンジンに親和性が高い簡潔なURLを生成します。URLとして、動的システムの代名詞ともいえる「クエリ文字列」 アプローチではなく、セグメントベースアプローチを採用しています。

豊富なライブラリ

CodeIgniterには、一般に必要とされる豊富なライブラリが用意されているだけでなく、それらのライブラリにアクセスするためのシンプルなインターフェースと論理的な構造が用意されています。開発者は、これらのライブラリを活用することにより、より短時間でアプリケーションを構築することができます。

データベースアクセス、Email処理、データ検証、セッション維持、イメージ操作、XML-RPCデータ処理などの、基本的な機能から拡張的な機能まで、豊富に用意されています。

システム拡張が容易

自作ライブラリ/ヘルパー関数/クラス継承/システムフックなどの機能により、簡単にシステムを拡張できます。

ドキュメント化されている

多くのフレームワークは、細かいところまでドキュメント化されていないことが多いですが、CodeIgniterは完全にドキュメント化されています。ソースコードにも、コメントが豊富に書かれています。

学習コストが少ない

フレームワーク自体を理解するために多くの時間がかかるということがよくあります。CodeIgniterは、PHPを理解できていれば、習得を容易に行なえます。特にフレームワーク初心者には大きなメリットです。

 

まとめ

CodeIgniterは、「高速」「軽量」「シンプル」「低い学習コスト」「高い自由度」などの特徴により、開発しやすく扱いやすいフレームワークとして、世界でトップクラスの人気を集めているPHPフレームワークです。

 

CakePHPを使ったオフショア開発は、こちらへ

About the author: matsumoto