CakePHP is a free, open-source, fast development framework for PHP. It’s a foundational structure for programmers to conceive world wide web applications. Our primary aim is to endow you to work in a organised and fast manner–without decrease of flexibility.
CakePHP takes the monotony out of world wide web development. We supply you with all the tools you need to get started cipher what you actually need to get done: the reasoning specific to your submission. Instead of reinventing the wheel every time you sit down to a new project, ascertain out a exact replicate of CakePHP and get begun with the genuine guts of your submission.
CakePHP has an active developer group and community, conveying great value to the task. In supplement to keeping you from wheel-reinventing, using CakePHP means your application’s core is well tested and is being constantly improved.
Here’s a fast register of features you’ll enjoy when using CakePHP:
hardworking, amicable community
Compatible with versions PHP 5.2.8 and larger.
Integrated CRUD for database interaction.
demand dispatcher with clean, custom URLs and paths.
very quick and flexible templating (PHP syntax, with helpers).
internet message, biscuit, Security, Session, and demand management constituents.
facts and figures Sanitization.
Works from any world wide web location book or directions, with little to no Apache configuration involved.
- Understanding Model-View-Controller
CakePHP pursues the MVC software design pattern. Programming using MVC divides your submission into three major components:
The form layer
The form layer represents the part of your submission that implements the enterprise logic. It is to blame for retrieving facts and figures and altering it into significant notions for your submission. This includes processing, validating, associating or other jobs associated to management facts and figures.
At a first glimpse, Model objects can be looked at as the first level of interaction with any database you might be utilising for your submission. But in general they stand for the foremost notions round which you apply your submission.
In the case of a social mesh, the Model layer would take care of jobs such as keeping the client data, keeping associates associations, saving and retrieving user photographs, finding new associates for proposals, etc. While the model objects can be considered as “Friend”, “User”, “Comment”, or “Photo”.
The outlook level
The outlook renders a production of modeled facts and figures. Being separated from the form things, it is to blame for utilising the data it has available to make any presentational interface your application might need.
For demonstration, as the Model layer comes back a set of facts and figures, the view would use it to render a HTML sheet encompassing it. Or a XML formatted outcome for others to consume.
The View level is not only restricted to HTML or text representation of the data, it can be used to consign a broad kind of formats counting on your desires, such as videos, music, documents and any other format you can believe of.
The manager level
The manager level manages requests from users. It’s responsible for rendering back a response with the aid of both the Model and the View level.
Controllers can be seen as managers taking care that all needed assets for accomplishing a task are delegated to the correct employees. It remains for appeals from purchasers, checks their validity according to authentication or authorization directions, delegates facts and figures fetching or processing to the form, and chooses the correct type of presentational facts and figures that the client is acknowledging, to eventually delegate this rendering method to the outlook layer.
CakePHP demand cycle
number: 1: A usual MVC demand in CakePHP
The usual CakePHP request cycle begins with a client demanding a sheet or resource in your submission. This demand is first processed by a dispatcher which will select the correct manager object to handle it.
Once the request reaches at the controller, it will communicate with the form level to process any facts and figures fetching or saving procedure that might be needed. After this connection is over, the manager will advance at delegating to the correct outlook object the task of generating an yield producing from the facts and figures supplied by the form.
Finally, when this yield is developed, it is immediately rendered to the client
nearly every request to your submission will follow this rudimentary pattern. We’ll add some minutia subsequent on which are exact to CakePHP, so hold this in mind as we advance.
Why use MVC? Because it is a tried and factual software conceive pattern that turns an submission into a maintainable, modular, quickly evolved package. Crafting application tasks into separate forms, outlooks, and controllers makes your submission very lightweightweight on its feet. New characteristics are effortlessly supplemented, and new faces on old characteristics are a break. The modular and distinct conceive furthermore permits developers and designers to work simultaneously, encompassing the proficiency to rapidly prototype. parting also permits developers to make changes in one part of the submission without affecting the other ones.
If you’ve never built an submission this way, it takes some time getting used to, but we’re assured that once you’ve constructed your first submission utilising CakePHP, you won’t desire to do it any other way.