Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 History  





2 Features  





3 Conferences  





4 Training  





5 See also  





6 References  



6.1  Bibliography  







7 External links  














CakePHP






العربية

Català
Čeština
Dansk
Deutsch
Español
فارسی
Français

Հայերեն
Bahasa Indonesia
Italiano
Magyar
Bahasa Melayu
Nederlands

Norsk bokmål
Polski
Português
Русский

Türkçe
Українська
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 




In other projects  



Wikimedia Commons
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


CakePHP
Developer(s)Cake Software Foundation, Inc.
Initial releaseApril 2005; 19 years ago (2005-04)
Stable release

5.0.7[1] / 2024-04-25[±]

Repository
Written inPHP
Operating systemCross-platform
PlatformPHP 8.1+
Available inMultilingual
TypeWeb framework
LicenseMIT License
Websitecakephp.org Edit this at Wikidata

CakePHP is an open-source web framework. It follows the model–view–controller (MVC) approach and is written in PHP, modeled after the concepts of Ruby on Rails, and distributed under the MIT License.[2]

CakePHP uses well-known software engineering concepts and software design patterns, such as convention over configuration, model–view–controller, active record, association data mapping, and front controller.

History[edit]

CakePHP started in April 2005, when the Polish programmer Michal Tatarynowicz[3] wrote a minimal version of a rapid application development framework in PHP, dubbing it Cake.[4][5][6] He published the framework under the Public Domain license - which was soon changed to MIT License - and opened it up to the online community of developers.[citation needed]

In December 2005, L. Masters and G. J. Woodworth founded the Cake Software Foundation to promote development related to CakePHP.[6] Version 1.0 was released in May 2006.

One of the project's inspirations was Ruby on Rails, using many of its concepts. The community has since grown and spawned several sub-projects.[7][8]

In October 2009, project manager Woodworth and developer N. Abele resigned from the project to focus on their own projects, including the Lithium web framework (previously part of the CakePHP project). The remaining development team continued to focus on the original roadmap that was previously defined.[9]

Features[edit]

Plugins allow developers to package combinations of controllers, models, views and other classes for reuse in multiple applications and by other developers. Since CakePHP 3 it has been possible to install plugins using Composer.[10]

CakePHP ORM (object-relational mapping) is an advanced PHP hybrid of the active record pattern and the data mapper pattern, borrowing core concepts from both. The CakePHP ORM uses two primary object types, the table class representing database tables, and entity classes representing individual table rows.[11]

Query builder was introduced in CakePHP 3 as a companion to the new ORM. The query builder provides a set of classes and methods for programmatically building SQL queries instead of writing them by hand. The ORM makes extensive use of the query builder.[12]

Routing and reverse routing. The CakePHP router allows for complex HTTP application routing, routing incoming requests to the correct controller and action. Reverse routing creates a relationship between routes and links, ensuring that links are always generated with the correct uniform resource locator.

View Cells provide small, mini-controllers that can invoke view logic and render templates. These are ideal for creating small, reusable page components.

Migrations provide version control for database schemas. These make it possible to ensure that changes to application logic and corresponding database changes are kept synchronised. This greatly simplifies both CakePHP application deployment, but also development in multi-developer teams. The CakePHP migration tool is based on the Phinx project.

Automatic pagination to make it easy for developers to paginate result sets generated by the ORM or Query Builder.

Form builder and validator allows for the programmatic generation of forms that are tied to the model layer for both data types and validation.[13]

CakePHP Bake is a tool for automatically generating application, skeletons and boilerplate code. It uses a pre-existing database schema to infer the correct data relations and data types and using that to generate a full set of controllers, model object and view templates. It can generate a basic CRUD application with zero coding.[14]

Conferences[edit]

Year[15] Location
2024 Esch-sur-Alzette, Luxembourg
2023 Los Angeles, USA
2022 Virtual
2021 Virtual
2020 Virtual
2019 Tokyo, Japan
2017 New York, NY, USA
2016 Amsterdam, Netherlands
2015 New York, NY, USA
2014 Madrid, Spain
2013 San Francisco, CA, USA
2012 Manchester, UK
2011 Manchester, UK
2010 Chicago, IL, USA
2009 Berlin, Germany
2008 Buenos Aires, Argentina
2008 Orlando, FL, USA

Training[edit]

Official online training courses sponsored by CakeDC. Monthly live training covering a range of topics including:

See also[edit]

References[edit]

  1. ^ "CakePHP 5.0.7 Released". CakePHP Blog. Retrieved 2024-05-05.
  • ^ "CakePHP Manual - CakePHP at a Glance". Retrieved 2015-03-09.
  • ^ "Contributors - cakephp". cakephp.lighthouseapp.com.
  • ^ "Introduction to CakePHP - 1.1". book.cakephp.org.
  • ^ "Cakephp:history_of_cakephp [Neurosciences]". Archived from the original on 2016-03-03. Retrieved 2012-08-31.
  • ^ a b "Listing" (PDF). www.cs.colorado.edu. Retrieved 2019-07-01.
  • ^ "CakeForge". Archived from the original on 2009-09-08. Retrieved 2009-09-05.
  • ^ "TheChaw". Retrieved 2009-09-05.
  • ^ "The Cake is Still Rising". Archived from the original on 2010-10-10. Retrieved 2009-10-25.
  • ^ "Plugins". Retrieved 2020-03-13.
  • ^ "ORM". Retrieved 2020-03-13.
  • ^ "Query builder". Retrieved 2020-03-13.
  • ^ "Form helper". Retrieved 2020-03-13.
  • ^ "CakePHP 3: Bake by example". 31 August 2010. Retrieved 2020-03-13.
  • ^ "Events". cakefest.org. Retrieved 2024-03-21.
  • Bibliography[edit]

  • Golding, David (July 21, 2008). Beginning CakePHP: from Novice to Professional (1st ed.). Apress. p. 344. ISBN 978-1-4302-0977-5. Archived from the original on 2011-01-12. Retrieved 2009-06-12.
  • Chan, Kai; Omokore, John; Miller, Richard (December 2, 2008). Practical CakePHP Projects (1st ed.). Apress. p. 400. ISBN 978-1-4302-1578-3. Archived from the original on 2010-12-23. Retrieved 2009-06-12.
  • Watts, James; González, Jorge (August 5, 2014). CakePHP 2 Application Cookbook (1st ed.). packtpub. p. 346. ISBN 9781782160083. Retrieved 2014-08-05.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=CakePHP&oldid=1229553659"

    Categories: 
    Free computer libraries
    Free software programmed in PHP
    PHP frameworks
    Web frameworks
    Template engines
    Software using the MIT license
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
    All articles with unsourced statements
    Articles with unsourced statements from January 2020
     



    This page was last edited on 17 June 2024, at 12:53 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki