CakePHP

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