CakePHP(ケイクピーエイチピー)とは、PHPで書かれたオープンソースのWebアプリケーションフレームワークである。先行するRuby on Railsの概念の多くを取り入れており、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークと言われている。MITライセンスの元でフリーで配布されている。
歴史
2005年3月、Cakeという名前の小さなフレームワークが公開されたことでCakePHPプロジェクトは始まった。2005年12月にはcakeソフトウェア財団が設立され、多くのサブプロジェクトを生みながら、利用者の拡大を続けている。特に日本においては、2009年以降、2017年までもっとも人気のあるPHPフレームワークとなっており、[2]2018年からは世界的な潮流を受けてLaravelに人気を奪われるも根強い人気を得ている。なお、2020年1月現在も日本での稼働WEBサイト数はLaravelを上回っており、世界で最も多いという調査結果がある(日本以下、アメリカ、ブラジルと続く)。[3][4]
特徴
- MVCアーキテクチャ。
- 高い後方互換性。
- 下位バージョンからのアップグレードをサポートする公式移行ガイド及びUpgrade shell。
- 統合された柔軟なO/Rマッピング。
- フォームバリデーション機能。
- セキュリティ対策機能(XSS対策・CSRF対策・フォーム改竄検知)。
- カスタムURLを実現するためのリクエストディスパッチャー。
- PEAR等の外部ライブラリに依存しておらず、単体での利用が可能。
- 必要なライブラリをその都度利用できるインポート機能。
- プラグインによる機能拡張。
- 柔軟なビュー機構。
- テンプレートの継承や拡張。
- ページ単位及び部品単位のキャッシュ。
- Composerへの標準対応(バージョン3以降)。
リリース
リリースバージョンは、メジャーバージョン・マイナーバージョン・アップデートバージョンで構成されている。
- メジャーバージョン
- アーキテクチャーの変更等を管理するバージョン。
- 例)CakePHP 1 → 2(PHP4のサポートがなくなり、PHP5専用へ)。CakePHP 2 → 3(PHP5.4以降専用・名前空間の使用・モデルが配列でなくオブジェクトを返す)
- マイナーバージョン
- 新機能の追加等を管理するバージョン。基本的に新機能を使用しなければ、同じメジャーバージョン内では互換性を持つとしている。
- 例)CakePHP 2.0 → 2.1(ビュークラスの機能拡張・コールバックに変わるイベントマネージャーの導入)
- アップデートバージョン
- バグ修正や性能改善を管理するバージョン。
CakePHP 1.2
- リリース日 : 2008年12月25日 (15年前) (2008-12-25)
- 対応PHPバージョン : PHP4.3.2以降及びPHP5以降
- CakePHP 1.1 からの変更点[5]
- テストが全クラスをカバーし、コードカバレッジもより網羅
- コマンドラインからアプリケーションを実行するシェル機構の導入
- i18n(国際化)とl10n(地域化)をサポート
- ユニコードの文字列をサポート
- CSRF対策の導入
- モデル内のメソッドを再利用可能にするビヘイビア機能の導入
- バリデーションの強化(複数バリデーションのサポートと組み込みバリデーションルールの増加)
- DB2、Oracle Database のサポート
- APC/XCache/Memcache のサポート
- より詳細なエラー表示(開発時のみ、バックトレースやビュー変数をエラーとともに表示)
- ページ分割やソートを可能にするPagination機能の追加
- Htmlヘルパーの肥大化解消のため、フォーム関連をFormヘルパーに移行
- アプリケーション全体の設定をConfigureクラスによる定義へと変更
- 外部ファイルの読み込みをAppクラスによる読み込みへと変更
- ビューのファイル拡張子が「.thtml」から「.ctp」へと変更
CakePHP 1.3
- リリース日 : 2010年4月24日 (14年前) (2010-04-24)
- 対応PHPバージョン : PHP4.3.2以降及びPHP5以降
CakePHP 2.0
- リリース日 : 2011年10月16日 (13年前) (2011-10-16)
- 対応PHPバージョン : PHP5.2.6以上
- CakePHP 2.0.3
CakePHP 2.1
- リリース日 : 2012年3月5日 (12年前) (2012-03-05)
- 対応PHPバージョン : PHP5.2.8以上
CakePHP 2.2
- リリース日 : 2012年7月1日 (12年前) (2012-07-01)
- 対応PHPバージョン : PHP5.2.8以上
CakePHP 2.3
- リリース日 : 2013年1月28日 (11年前) (2013-01-28)
- 対応PHPバージョン : PHP5.2.8以上
CakePHP 2.4
- リリース日 : 2013年8月30日 (11年前) (2013-08-30)
- 対応PHPバージョン : PHP5.2.8以上
CakePHP 2.5
- リリース日 : 2014年5月13日 (10年前) (2014-05-13)
- 対応PHPバージョン : PHP5.2.8以上
CakePHP 2.6
- リリース日 : 2014年12月23日 (9年前) (2014-12-23)
- 対応PHPバージョン : PHP5.2.8以上
CakePHP 2.7
- リリース日 : 2015年7月12日 (9年前) (2015-07-12)
- 対応PHPバージョン : PHP5.3.0以上
CakePHP 3.0
- リリース日 : 2015年3月22日 (9年前) (2015-03-22)[6]
- 対応PHPバージョン : PHP5.4.16以上
- 新しいORMの導入
- View Cellsクラスの導入
CakePHP 3.1
- リリース日 : 2015年9月20日 (9年前) (2015-09-20)
- 対応PHPバージョン : PHP5.4.16以上
CakePHP 3.2
- リリース日 : 2016年1月29日 (8年前) (2016-01-29)
- 対応PHPバージョン : PHP5.5.9以上
CakePHP 3.3
- リリース日 : 2016年8月12日 (8年前) (2016-08-12)
- 対応PHPバージョン : PHP5.5.9以上
CakePHP 3.4
- リリース日 : 2017年2月12日 (7年前) (2017-02-12)
- 対応PHPバージョン : PHP5.6.0以上
CakePHP 3.5
- リリース日 : 2017年8月18日 (7年前) (2017-08-18)[7]
- 対応PHPバージョン : PHP5.6.0以上
CakePHP 3.6
- リリース日 : 2018年4月14日 (6年前) (2018-04-14)[8]
- 対応PHPバージョン : PHP5.6.0以上
CakePHP 3.7
- リリース日 : 2018年12月8日 (5年前) (2018-12-08)[9]
- 対応PHPバージョン : PHP5.6.0以上
CakePHP 3.8
- リリース日 : 2019年6月26日 (5年前) (2019-06-26)[10]
- 対応PHPバージョン : PHP5.6.0以上
CakePHP 3.9
- リリース日 : 2020年6月21日 (4年前) (2020-06-21)
- 対応PHPバージョン : PHP5.6.0以上
- 2022年12月15日までセキュリティ修正をリリース。[11]
CakePHP 4.0
- リリース日 : 2019年12月15日 (4年前) (2019-12-15)[12]
- 対応PHPバージョン : PHP7.2.0以上
CakePHP 4.1
- リリース日 : 2020年7月5日 (4年前) (2020-07-05)
- 対応PHPバージョン : PHP7.2.0以上
CakePHP 4.2
- リリース日 : 2020年12月21日 (3年前) (2020-12-21)
- 対応PHPバージョン : PHP7.2.0以上
CakePHP 4.3
- リリース日 : 2021年10月24日 (3年前) (2021-10-24)
- 対応PHPバージョン : PHP7.2.0以上
CakePHP 4.4
- リリース日 : 2022年6月7日 (2年前) (2022-06-07)
- 対応PHPバージョン : PHP7.4.0以上
発音・読み方
日本国内では英語での発音に近い「ケイクピーエイチピー」と読まれることが多い。
脚注
- ^ “Release CakePHP 5.0.4 released · cakephp/cakephp · GitHub” (英語). 2024年1月3日閲覧。
- ^ “[PHPウォッチ]第38回 人気フレームワークCakePHP,国内初のカンファレンス開催”. ITPro (2009年1月27日). 2014年4月8日閲覧。
- ^ “=Top Websites Using CakePHP/cakephp”. 2020年1月28日閲覧。
- ^ “=Top Websites Using Laravel/laravel”. 2020年1月28日閲覧。
- ^ http://bakery.cakephp.org/articles/gwoo/2008/12/25/the-gift-of-1-2-final
- ^ 末岡洋子 (2015年3月24日). “「CakePHP 3.0」リリース、ORMを刷新”. OSDN Corporation. 2015年9月3日閲覧。
- ^ markstory (August 18, 2017). “CakePHP 3.5.0 Released” (英語). CakePHP. 2017年11月7日閲覧。
- ^ markstory (April 14, 2018). “CakePHP 3.6.0 Released” (英語). CakePHP. 2018年5月24日閲覧。
- ^ markstory (December 08, 2018). “CakePHP 3.7.0 Released” (英語). CakePHP. 2019年8月12日閲覧。
- ^ markstory (June 26, 2019). “CakePHP 3.8.0 Released” (英語). CakePHP. 2019年8月12日閲覧。
- ^ “3.x Maintenance Mode” (英語). GitHub. 2021年1月26日閲覧。
- ^ markstory (December 15, 2019). “CakePHP 4.0.0 Released” (英語). CakePHP. 2019年12月27日閲覧。
外部リンク