CodeIgniter
開発元 | EllisLab, Inc. → ブリティッシュコロンビア工科大学 |
---|---|
初版 | 2006年2月28日[1] |
最新版 | 4.4.1 / 2023年9月8日[2] |
リポジトリ | |
プログラミング 言語 | PHP |
種別 | Webアプリケーションフレームワーク |
ライセンス | 〜2.x: CodeIgniterライセンス 3.0〜: MITライセンス |
公式サイト | codeigniter.com |
CodeIgniter(コードイグナイター)は、PHPを用いて動的Webサイトを構築するために利用するオープンソースのWebアプリケーションフレームワークである。
概要
[編集]CodeIgniterは軽量で速度重視であることを特徴とするWebアプリケーションフレームワークである[3]。CodeIgniterには、一般に必要とされるプログラミングタスクに対する豊富なライブラリが用意されているだけでなく、それらのライブラリにアクセスするためのシンプルなインターフェースと論理的な構造が用意されている。開発者はこれらが備わったCodeIgniterを用いることで、より短時間でアプリケーションを構築することができる。
CodeIgniterの最初の公開バージョンは、2006年にリリースされた[1]。Googleの検索数による比較では、2011年にはPHPの他の主要フレームワーク (CakePHP, Zend Framework, Symfony) を抑えCodeIgniterが最多となるなど、広く用いられている[3]。 その後はライセンス問題もあり、後発のLaravelに人気を奪われるが、アメリカ、インド、インドネシア、ブラジル、トルコなどでは依然として人気が高く、インド、インドネシア等でのWEBサイト数は2019年2月現在においてもLaravelを凌いでいる。[4]
2020年2月には名前空間の全面採用などが行われたバージョン4.0がリリースされた[5]。
特徴
[編集]Ruby on Rails のように、CodeIgniterでは、ユーザは Active Record(バージョン3.0以降はQuery Builderに改称)を用いてデータベースに接続でき、モデル・ビュー・コントローラアーキテクチャパターンの利用が推奨される。
- 極めて軽量
- 複数のデータベースプラットフォームをサポート
- Formとデータの検証 (Validation)
- セキュリティと XSSフィルタリング
- セッション管理
- Eメール送信クラス。添付・HTML/テキストEメール・複数プロトコル(sendmail・SMTPおよび Mail)のサポートなど
- 画像操作ライブラリ(切り抜き・リサイズ・回転など)。GD・ImageMagick および Netpbm に対応。
- ファイルアップロードクラス
- FTPクラス
- ローカライゼーション
- ページ付け
- データ暗号化
- ベンチマーク
- 完全ページキャッシュ
- エラーロギング
- アプリケーションの プロファイリング
- カレンダークラス
- ユーザーエージェントクラス
- Zip圧縮クラス
- テンプレートエンジンクラス
- トラックバッククラス
- XML-RPCライブラリ
- 単体テストクラス
- 検索エンジンフレンドリURL
- 柔軟なURIルーティング
- フック・クラス拡張およびプラグインへの対応
- 多数の「ヘルパー」関数ライブラリ
- Composerへの対応(バージョン3.0以降)
Kohana
[編集]Kohanaは、CodeIgniterからフォーク(派生・分岐)したプロジェクトである。(2011年頃までは "KohanaPHP" と称していたが、"PHP" という言葉の使用がPHP Licenceに違反する可能性があったため、現在はプロジェクト名も単に "Kohana" と表記している。)
Kohanaは、モデル・ビュー・コントローラ アキーテクチャパターンを使ったPHP5のフレームワークである。Kohanaは、セキュアで、軽量、かつ、簡単に利用できるということを目標としている。
もともとは、BlueFlameという名前のプロジェクトで作成されていたKohana(当時は "KohanaPHP")の最初のリリースは、よく知られたPHP MVCフレームワークを見据えたいくつかのバグ修正が主たるものであった。
KohanaとCodeIgniterの主な違いの一つとしては、CodeIgniterの長期に渡る(1.7.2まで)PHP4下位互換に対する、Kohanaの厳格なPHP5によるOOP(オブジェクト指向開発)が挙げられる。
2017年7月1日をもって開発を終了することが告知されている。[6]
ライセンス
[編集]バージョン2.xまでのCodeIgniterは、ライセンスに独自のオープンソースライセンスであるCodeIgniterライセンスを採用していた[7]。CodeIgniterライセンスはApache/BSDスタイルのオープンソースライセンスであるが、宣伝条項を含んでおりGPLとは互換性がない[8]。
2011年10月、EllisLabはCodeIgniterのライセンスをOSL-3.0に変更すると発表し[9]、バージョン3.x開発ブランチでOSL-3.0/AFL-3.0への変更がコミットされた[10]。
その後もバージョン3.0の開発が続けられていたが、2013年7月、EllisLabはCodeIgniterの新しい所有者を探していることを発表[11]。翌2014年10月、ブリティッシュコロンビア工科大学が開発を引き継ぐことになった[12]。バージョン3.xもMITライセンスに変更されることになり[13]、2015年3月30日に3.0.0がリリースされた[14]。
脚注
[編集]- ^ a b “Change Log” (英語). CodeIgniter User Guide. EllisLab, Inc.. 2014年4月7日閲覧。
- ^ “Release CodeIgniter 4.4.1 · codeigniter4/CodeIgniter4 · GitHub” (英語). 2021年8月23日閲覧。
- ^ a b “軽量PHPフレームワーク 'CodeIgniter' 徹底ガイド!”. ci-guide.info. 2014年4月8日閲覧。
- ^ “Top Websites Using CodeIgniter”. 2019年2月20日閲覧。
- ^ “CodeIgniter 4.0 is here!”. forum.codeigniter.com. 2020年5月18日閲覧。
- ^ http://discourse.kohanaframework.org/t/kohana-retirement-2017-07-01/1277
- ^ “CodeIgniterのライセンスについて” (2013年10月12日). 2014年4月8日閲覧。
- ^ “【重要】EllisLabが現行の「CodeIgniterライセンス」はGPLと互換性がないという見解を公表しました”. 日本CodeIgniterユーザ会 (2011年11月4日). 2014年4月8日閲覧。
- ^ The Heart of EllisLab: Why we do what we do EllisLab CEOのLeslie Camacho氏による発表。ExpressionEngine & CodeIgniter Conference 2011。
- ^ adding new license file (OSL 3.0) and updating readme to ReST · bcit-ci/CodeIgniter@f4a4bd8
- ^ EllisLab Seeking New Owner for CodeIgniter EllisLab公式ブログ(2013年7月9日)
- ^ Your Favorite PHP Framework, CodeIgniter, Has a New Home EllisLab公式ブログ(2014年10月6日)
- ^ CodeIgniter 3 Will be Released Under the MIT License CodeIgniter公式フォーラム(2014年10月27日)
- ^ CodeIgniter 3.0 CodeIgniter公式フォーラム(2015年3月30日)