CakePHP is a rapid development framework for PHP which uses commonly known design patterns like Associative Data Mapping, Front Controller, and MVC. Our primary goal is to provide a structured framework that enables PHP users at all levels to rapidly develop robust web applications, without any loss to flexibility.
Installing CakePHP via Composer
You can install CakePHP into your project using Composer. If you're starting a new project, we recommend using the app skeleton as a starting point. For existing applications you can run the following:
$ composer require cakephp/cakephp
For details on the (minimum/maximum) PHP version see version map.
Running Tests
Assuming you have PHPUnit installed system wide using one of the methods stated here, you can run the tests for CakePHP by doing the following:
- Copy
phpunit.xml.dist
tophpunit.xml
. - Add the relevant database credentials to your
phpunit.xml
if you want to run tests against a non-SQLite datasource. - Run
phpunit
.
Some Handy Links
- CakePHP - The rapid development PHP framework.
- CookBook - The CakePHP user documentation; start learning here!
- API - A reference to CakePHP's classes.
- Awesome CakePHP - A list of featured resources around the framework.
- Plugins - A repository of extensions to the framework.
- The Bakery - Tips, tutorials and articles.
- Community Center - A source for everything community related.
- Training - Join a live session and get skilled with the framework.
- CakeFest - Don't miss our annual CakePHP conference.
- Cake Software Foundation - Promoting development related to CakePHP.
Get Support!
- Slack - Join us on Slack.
- #cakephp on irc.freenode.net - Come chat with us, we have cake.
- Forum - Official CakePHP forum.
- GitHub Issues - Got issues? Please tell us!
- Roadmaps - Want to contribute? Get involved!
Contributing
- CONTRIBUTING.md - Quick pointers for contributing to the CakePHP project.
- CookBook "Contributing" Section - Details about contributing to the project.
Security
If you’ve found a security issue in CakePHP, please use the following procedure instead of the normal bug reporting system. Instead of using the bug tracker, mailing list or IRC please send an email to security [at] cakephp.org. Emails sent to this address go to the CakePHP core team on a private mailing list.
For each report, we try to first confirm the vulnerability. Once confirmed, the CakePHP team will take the following actions:
- Acknowledge to the reporter that we’ve received the issue, and are working on a fix. We ask that the reporter keep the issue confidential until we announce it.
- Get a fix/patch prepared.
- Prepare a post describing the vulnerability, and the possible exploits.
- Release new versions of all affected versions.
- Prominently feature the problem in the release announcement.