CodeIgniter(コードイグナイター)とは
CodeIgniterは、PHPを用いて動的なWebサイトを構築するための、オープンソースの
Web[[アプリケーションフレームワーク]]です。軽量で高速な動作が特徴で、開発者は効率的にWebアプリケーションを開発できます。
概要
CodeIgniterは、その軽量性と速度を重視した設計が特徴です。一般的なプログラミングタスクに必要なライブラリが豊富に用意されており、それらにアクセスするためのインターフェースと論理的な構造がシンプルに設計されています。これにより、開発者はより短い時間でアプリケーションを構築できます。
2006年に最初のバージョンがリリースされて以降、2011年にはPHPの主要フレームワークの中で最も検索されるなど、広く利用されてきました。その後、
ライセンス問題などから後発のLaravelに人気を奪われる時期もありましたが、アメリカ、インド、インドネシア、ブラジル、トルコなどでは依然として高い人気を誇っています。特にインドやインドネシアでは、2019年2月時点でもLaravelを上回るWebサイト数で使用されています。
2020年2月には、名前空間を全面的に採用したバージョン4.0がリリースされ、さらなる進化を遂げています。
特徴
CodeIgniterは、
Ruby on Railsのように
Active Record(バージョン3.0以降はQuery Builderに改称)を用いて
データベースに接続できます。また、モデル・ビュー・コントローラ(MVC)アーキテクチャパターンを採用することが推奨されています。
CodeIgniterの主な特徴は以下の通りです。
極めて軽量
複数のデータベースプラットフォームをサポート
フォームとデータの検証 (Validation)
セキュリティとXSSフィルタリング
セッション管理
Eメール送信クラス: 添付ファイル、HTML/テキストメール、複数プロトコル(sendmail・SMTP・Mail)をサポート
画像操作ライブラリ: 切り抜き、リサイズ、回転など。GD・ImageMagick・Netpbmに対応
ファイルアップロードクラス
FTPクラス
ローカライゼーション
ページ付け
データ暗号化
ベンチマーク
完全ページキャッシュ
エラーロギング
アプリケーションのプロファイリング
カレンダークラス
ユーザーエージェントクラス
Zip圧縮クラス
テンプレートエンジンクラス
トラックバッククラス
XML-RPCライブラリ
単体テストクラス
検索エンジンフレンドリURL
柔軟なURIルーティング
フック・クラス拡張およびプラグインへの対応
多数の「ヘルパー」関数ライブラリ
Composerへの対応(バージョン3.0以降)
Kohana
Kohanaは、CodeIgniterからフォークしたプロジェクトです。当初は"KohanaPHP"という名称でしたが、PHP
ライセンスへの抵触を避けるために、現在は"Kohana"と表記されています。Kohanaは、MVCアーキテクチャを採用したPHP5フレームワークで、セキュア、軽量、そして使いやすさを目指しています。
Kohanaは、もともとBlueFlameというプロジェクト名で開発されていました。最初のリリースは、既存のPHP MVCフレームワークのバグ修正が主でした。CodeIgniterとKohanaの主な違いの一つは、CodeIgniterがPHP4との下位互換性を重視していたのに対し、KohanaはPHP5のオブジェクト指向開発に特化している点です。しかし、Kohanaは2017年7月1日をもって開発が終了しました。
CodeIgniterのバージョン2.xまでは、独自のCodeIgniter
ライセンスを採用していました。この
ライセンスはApache/BSDスタイルのオープンソース
ライセンスですが、宣伝条項を含んでおりGPLとは互換性がありませんでした。
2011年10月、EllisLabはCodeIgniterの
ライセンスをOSL-3.0に変更し、バージョン3.xの開発ブランチでOSL-3.0/AFL-3.0への変更がコミットされました。その後、2013年7月にEllisLabはCodeIgniterの新しい所有者を探していることを発表し、2014年10月に
ブリティッシュコロンビア工科大学が開発を引き継ぐことになりました。バージョン3.xもMIT
ライセンスに変更され、2015年3月30日に3.0.0がリリースされました。
まとめ
CodeIgniterは、PHPによるWebアプリケーション開発において、軽量かつ高速なフレームワークとして多くの開発者に利用されてきました。豊富な機能とシンプルな構造により、効率的な開発をサポートしています。
ライセンスの変更を経て、現在ではMIT
ライセンスの下で継続的に開発が行われています。
外部リンク
CodeIgniter公式サイト (英語)
日本CodeIgniterユーザ会
bcit-ci/CodeIgniter · GitHub
CodeIgniter 3のライセンスがMIT
ライセンスに変更され、いわゆる
ライセンス問題は完全に解消 — A Day in Serenity (Reloaded)