CakePHP Tutorial for begyndere: Hvad er CakePHP Framework?
Oversigt over CakePHP-tutorial
I denne CakePHP-tutorial lรฆrer vi alle de grundlรฆggende begreber fra bunden. Denne tutorial dรฆkker CakePHP-definition, historie, funktioner, mappestruktur og konfiguration og korte detaljer om, hvordan CakePHP-rammen fungerer.
Hvad er CakePHP?
CakePHP er en open source-ramme til hurtig udvikling og vedligeholdelse af webapplikationer bygget i PHP. Det er baseret pรฅ konceptet MVC-arkitektur, som hjรฆlper med at bygge PHP-webapplikationer nemt og enkelt med mindre kode. CakePHP hjรฆlper dig ogsรฅ med at adskille forretningslogik fra datalag og prรฆsentationslag.
Hvorfor bruge CakePHP Framework?
Her er de vigtigste fordele/fordele ved at bruge CakePHP framework:
- Cake PHP er langt en af โโde hurtigste webudviklingsplatforme.
- CakePHP giver udviklere mulighed for at fรฅ forbedret kontrol over databasen og SQL-forespรธrgsler.
- Det hjรฆlper brugere med at udvikle robuste webapplikationer uden hurtigt at miste deres miljรธfleksibilitet.
- Stรธtte til PostgreSQL, SQLite, MySQL, PEAR-DB til ADODB, et databaseabstraktionsbibliotek.
- Letter sรธgemaskinevenlige URL'er
- Tilbyder funktioner som inputvalidering og desinfektionsvรฆrktรธjer, der gรธr appen sikker.
- Skabelon med velkendt PHP-syntaks
Historien om CakePHP
Nu i denne CakePHP tutorial, vil vi dรฆkke historien om CakePHP framework:
| ร r | Milestone |
|---|---|
| 2005 | CakePHP blev udviklet af Michal Tatarynowicz den 15. april 2005. |
| 2005 | CakePHP udgav den under MIT-licens og รฅbnede den for fรฆllesskabsudviklerne. |
| 2005 | Larry E Masters tog over som hovedudvikler. |
| 2006 | Version 1.0 blev frigivet |
| 2011 | Version 2 blev frigivet |
| 2014 | Version 3 blev frigivet, som er fuldstรฆndig tilbagekaldt af tidligere versioner. |
| 2016 | Version 3.3.3. Of CakePHP er udgivet med mange avancerede funktioner. |
| 2019 | Version 3.7.9 er den sidste version, der er frigivet |
| 2021 | CakePHP kerneteam annoncerer den รธjeblikkelige tilgรฆngelighed af CakePHP 4.2.2 |
Funktioner af CakePHP
Her er vigtige funktioner i CakePHP.
- Aktivt, venligt fรฆllesskab
- MVC arkitektur
- Indbygget validering
- Fungerer fra ethvert webstedsbibliotek, med nogen eller ingen Apache-konfiguration involveret.
- Skabelonmotor
- Caching Operationer
- Nem CRUD-databaseinteraktion.
- Indbygget validering
- Handlin-komponenter som e-mail, cookie, sikkerhed, session og anmodning
- Se Hjรฆlpere for JavaScript, Ajax, HTML-formularer og mere
CakePHP- Mappestruktur
Nu i denne CakePHP-rammevejledning lรฆrer vi om CakePHP-mappestrukturen.
Nedenfor er en mappestruktur af CakePHP:
| Folder | Beskrivelse |
|---|---|
| Tests | Denne folder indeholder testcases til din ansรธgning. |
| tmp | Temp-mappen gemmer midlertidige data. |
| Vendor | Denne mappe hjรฆlper dig med at gemme CakePHP, og andre applikationsafhรฆngigheder vil blive installeret. |
| Webroot | Webroot gemmer alle de filer, du รธnsker skal vรฆre offentligt tilgรฆngelige. |
| Bin | Bin-mappen indeholder Cake-konsollens eksekverbare filer. |
| Logs | Den indeholder dine logfiler, hvilket afhรฆnger af din logkonfiguration. |
| Config | Konfigurationsmappen gemmer konfigurationsfilerne, som CakePHP bruger |
| plugins | Denne mappe indeholder plugins til applikationen. er, hvor de plugins, din applikation bruger, er gemt. |
| src | Den indeholder en konsolopgave og kommandoer til at administrere din applikation.
Locale Gemmer strengfiler til internationalisering. Model Indeholder din applikations tabeller, entiteter og adfรฆrd. |
Konfiguration af CakePHP
CakePHP leveres som standard med en enkelt konfigurationsfil. Det giver dig ogsรฅ mulighed for at รฆndre det i henhold til dine krav. Der er en mappe kaldet "config" givet til dette formรฅl.
| Variabelt navn | Beskrivelse |
|---|---|
| Debug | Giver dig mulighed for at รฆndre CakePHP debugging output. |
| App.navneomrรฅde | Hjรฆlper dig med at finde app klasser under. |
| App.baseUrl | Fjern kommentaren til dette sรธgeord, nรฅr du ikke รธnsker at bruge Apaches mod_rewrite med CakePHP. |
| App.kodning | Denne kommando giver dig mulighed for at definere, hvilken kodning dit program bruger. |
| App.base | Det er en basismappe, som appen ligger i. Hvis falsk, vil dette blive registreret automatisk. |
| App.fullBaseUrl | Kvalificeret domรฆnenavn |
| App.webroot | Det er en webroot-mappe. |
| App.wwwRoot | Filstien til webroot. |
| App.jsBaseUrl | Sti til den offentlige js-mappe. |
| App.stier | Konfigurer stier til ikke-klassebaserede ressourcer. |
| App.cssBaseUrl | Det er en websti til den offentlige css-mappe under webroot. |
| Sikkerhedssalt | Det er en tilfรฆldig streng, der bruges i hashing. |
| Asset.timestamp | Denne variabel giver dig mulighed for at tilfรธje et tidsstempel, nรฅr du bruger korrekte hjรฆlpere. |
Cake- PHP navngivningskonventioner
Kage fรธlger ideen om konvention over konfiguration. Navngivningskonventionsmetoden giver dig mulighed for at organisere driften af โโwebapplikationen. I denne metode skal mere end รฉt ord i navnet adskilles af "_" ved navngivning af filen og kamelhuse, nรฅr klassen navngives.
MVC-delene skal fรธlge nedenstรฅende givne syntaks:
| File Name | Klassens navn | Basisklassenavn | Lokation | |
|---|---|---|---|---|
| Model | File Name Entalsform af tabelnavnet med filtypenavnet .php ex: order.php |
Filnavnet i en Camel sag, f.eks.: Bestilling | Appmodel | /app/modeller |
| controller | tabelnavn_controller med .php-udvidelse, f.eks.: ordcrs_controllcr.php | Tabelnavnet tilfรธjet Controller, ex: OrdcrsController | AppController | /app/controllere |
| Se | Handlingsnavnet i controlleren med .ctp-udvidelsen, f.eks.: add.ctp | Ingen klasser; a view c HTML-tags og PHP. ' | /app/views/controllernavn |
Database konfiguration
CakePHP giver dig mulighed for at konfigurere databasen i config / app.php fil. Det giver standardforbindelse med angivne parametre, som du kan รฆndre efter dit valg.
Vigtige parametre er angivet nedenfor:
| Database | Navn pรฅ database |
|---|---|
| port (valgfrit) kodning |
TCP-porten eller Unix-stikket, der bruges til at oprette forbindelse til serveren. |
| Tidszone | Servertidszone skal indstilles. |
| Planlรฆg | Det hjรฆlper dig med at specificere hvilket skema du kan bruge. |
| unix_socket | Denne database bruges af drivere til at oprette forbindelse via Unix-socket-filer. |
| SSL nรธgle | Det er en filsti til SSL-nรธglefilen. |
| ssl_cert | Det er en filsti til SSL-certifikatfilen. |
| ssl_ca | Det er en filsti til SSL-certifikatmyndigheden. |
| Log | Dette udtryk hjรฆlper dig med at udfรธre forespรธrgselslogning. |
| I det | En liste over forespรธrgsler, som skal sendes til databaseserveren, nรฅr forbindelsen oprettes. |
| Indstil til sand, hvis du vil bruge reserverede ord eller specialtegn |
Hvordan virker MVC i CakePHP?
Nu vil vi lรฆre, hvordan MVC fungerer i CakePHP i denne CakePHP-rammevejledning.
Det er en dynamisk mรฅde at bygge en webapplikations primรฆre mekanisme pรฅ. Modellen, udsigten og controlleren adskiller hinanden.

Cake PHP opdeler operationer i tre dele:
- Modeller: Anvendes til alle databaseinteraktioner.
- Visninger: Bruges til alle output og skรฆrme.
- Controllere: Bruges til at styre applikationsflowet
Her er trin til at bruge MVC-arkitektur i CakePHP:
Trin 1) Klienten eller brugeren interagerer med visningen
Trin 2) Se advarslers controller for den specifikke hรฆndelse.
Trin 3) Den sender en databaseanmodning til modellen, og controlleren opdaterer modellen.
Trin 4) Modellen advarer om, at den har รฆndret sig.
Trin 5) View modtager modeldata og opdaterer sig selv i henhold til modtagne data.
Hvorfor bruge MVC?
- CakePHP MVC hjรฆlper dig med at adskille forretningslogik fra prรฆsentation og datahentning.
- Et websted er opdelt i logiske sektioner, som du kan styre med en specifik controller.
- Nรฅr du tester og fejlretter en applikation, hjรฆlper enhver udviklere dig med at lokalisere og rette fejl uden at have fuldstรฆndige detaljer om koden.
Ulemper ved at bruge CakePHP-rammen
- Dokumentationsunderstรธttelsen af โโCakePHP er ikke sรฅ omfattende, som den burde vรฆre.
- For at bruge CakePHP-software skal udvikleren opdatere standardruterne for at skabe smarte URL'er, hvilket er meget mere arbejde sammenlignet med andre PHP-frameworks.
- CakePHP envejs routing sammenlignet med andre rammer.
- At lรฆre PHP rammer er ikke let.
- Tilbyder envejs routing er en anden ulempe sammenlignet med rammer som Ruby on Rails.
Resumรฉ
- CakePHP er en open source-ramme, der hjรฆlper med at gรธre udvikling og vedligeholdelse af PHP-apps meget nemmere.
- CakePHP giver udviklere mulighed for at fรฅ forbedret kontrol over databasen og SQL-forespรธrgsler.
- Det blev udviklet af Michal Tatarynowicz den 15. april 2005
- MVC-arkitektur og indbygget validering er de vigtigste funktioner i CakePHP
- CakePHP leveres som standard med en enkelt konfigurationsfil, som giver dig mulighed for at รฆndre den i overensstemmelse med dine krav.
- Navnekonventionsmetoden for CakePHP giver dig mulighed for at organisere driften af โโwebapplikationen.
- CakePHP giver dig mulighed for at konfigurere databasen i filen config/app.php.
- Cake PHP opdeler MVC-operationer i tre dele:
- Modeller: Bruges til alle databaseinteraktioner, Visninger: Bruges til alle output og skรฆrme, Controllere: Bruges til at styre applikationsflowet
- Den stรธrste fordel ved at bruge MVC i CakePHP er, at det hjรฆlper dig med at adskille forretningslogik fra prรฆsentation og datahentning.
- Den stรธrste ulempe ved CakePHP er, at dokumentationsunderstรธttelse af CakePHP ikke er sรฅ omfattende, som den burde vรฆre.
