CakePHP vodič za početnike: Što je CakePHP Framework?

Sažetak CakePHP vodiča

U ovom vodiču za CakePHP naučit ćemo sve osnovne koncepte od nule. Ovaj vodič pokriva CakePHP definiciju, povijest, značajke, strukturu mape i konfiguraciju te kratke pojedinosti o tome kako CakePHP okvir radi.

Što je CakePHP?

CakePHP je okvir otvorenog koda za brzi razvoj i održavanje web aplikacija izgrađenih u PHP-u. Temelji se na konceptu MVC arhitekture, koja pomaže u izradi PHP web aplikacija lako i jednostavno s manje koda. CakePHP vam također pomaže odvojiti poslovnu logiku od podatkovnog sloja i prezentacijskog sloja.

Zašto koristiti CakePHP Framework?

Ovdje su glavne prednosti/prednosti korištenja CakePHP okvira:

  • Cake PHP je daleko jedna od najbržih platformi za web razvoj.
  • CakePHP programerima omogućuje bolju kontrolu nad bazom podataka i SQL upitima.
  • Pomaže korisnicima da razviju robusne web aplikacije bez brzog gubitka fleksibilnosti okruženja.
  • Podrška za PostgreSQL, SQLite, MySQL, PEAR-DB za ADODB, knjižnicu apstrakcije baze podataka.
  • Olakšava URL-ove prilagođene tražilicama
  • Omogućite značajke kao što su alati za provjeru valjanosti unosa i dezinfekciju koji aplikaciju čine sigurnom.
  • Izrada šablona s poznatom PHP sintaksom

Povijest CakePHP-a

Sada ćemo u ovom CakePHP vodiču pokriti povijest CakePHP okvira:

Godina Prekretnica
2005 CakePHP je razvio Michal Tatarynowicz 15. travnja 2005.
2005 CakePHP ga je objavio pod licencom MIT-a i otvorio programerima zajednice.
2005 Larry E Masters preuzeo je mjesto glavnog programera.
2006 Objavljena je verzija 1.0
2011 Objavljena je verzija 2
2014 Izdana je verzija 3 koja u potpunosti opoziva prethodne verzije.
2016 Verzija 3.3.3. Of CakePHP je objavljen s mnogo naprednih značajki.
2019 Verzija 3.7.9 posljednja je objavljena verzija
2021 Glavni CakePHP tim najavljuje trenutnu dostupnost CakePHP 4.2.2

Značajke CakePHP-a

Evo važnih značajki CakePHP-a.

  • Aktivna, prijateljska zajednica
  • MVC arhitektura
  • Ugrađena provjera valjanosti
  • Radi s bilo kojeg imenika web-mjesta, s uključenom određenom ili nikakvom konfiguracijom Apachea.
  • Motor za izradu predložaka
  • caching Operama
  • Jednostavne interakcije CRUD baze podataka.
  • Ugrađena provjera valjanosti
  • Rukovanje komponentama poput e-pošte, kolačića, sigurnosti, sesije i zahtjeva
  • Pogledajte pomoćnike za JavaScript, Ajax, HTML obrasci i više

CakePHP - Struktura mape

U ovom vodiču za okvir CakePHP naučit ćemo o strukturi mape CakePHP.

Ispod je struktura mapa CakePHP-a:

Mapa Description
Testovi Ova mapa sadrži testne slučajeve za vašu aplikaciju.
tmp Mapa temp pohranjuje privremene podatke.
Prodavač Ova vam mapa pomaže pohraniti CakePHP, a bit će instalirane i druge ovisnosti o aplikaciji.
Webroot Korištenje električnih romobila ističe Webroot pohranjuje sve datoteke za koje želite da budu javno dostupne.
Kanta Mapa bin sadrži izvršne datoteke konzole Cake.
Drva Sadrži vaše datoteke dnevnika, što ovisi o konfiguraciji vašeg dnevnika.
config Konfiguracijska mapa pohranjuje konfiguracijske datoteke koje koristi CakePHP
Dodaci Ova mapa sadrži dodatke za aplikaciju. gdje su pohranjeni dodaci koje vaša aplikacija koristi.
src Sadrži zadatak konzole i naredbe za upravljanje vašom aplikacijom.

Lokal Pohranjuje datoteke nizova za internacionalizaciju.

Model Sadrži tablice, entitete i ponašanja vaše aplikacije.

Konfiguracija CakePHP-a

CakePHP standardno dolazi s jednom konfiguracijskom datotekom. Također vam omogućuje da ga modificirate prema svojim zahtjevima. U tu svrhu postoji mapa pod nazivom “config”.

Naziv varijable Description
Otkloniti neispravnost Omogućuje vam promjenu CakePHP izlaza za otklanjanje pogrešaka.
App.namespace Pomaže vam pronaći klase aplikacije pod.
App.baseUrl Uklonite komentar ove ključne riječi ako ne želite koristiti Apacheov mod_rewrite s CakePHP.
App.kodiranje Ova naredba vam omogućuje da definirate koje kodiranje koristi vaša aplikacija.
App.base To je osnovni direktorij u kojem se nalazi aplikacija. Ako je netočno, to će se automatski otkriti.
App.fullBaseUrl Kvalificirani naziv domene
App.webroot To je webroot direktorij.
App.wwwRoot Put datoteke do webroot-a.
App.jsBaseUrl Put do javnog js direktorija.
App.staze Konfigurirajte staze za resurse koji se ne temelje na klasi.
App.cssBaseUrl To je web put do javnog css direktorija pod webrootom.
Sigurnost.sol To je nasumični niz koji se koristi u raspršivanju.
Asset.timestamp Ova vam varijabla omogućuje dodavanje vremenske oznake kada koristite odgovarajuće pomagače.

Cake - PHP konvencije imenovanja

Torta slijedi ideju konvencije umjesto konfiguracije. Metoda konvencije imenovanja omogućuje organiziranje rada web aplikacije. U ovoj metodi, više od jedne riječi u nazivu mora biti odvojeno s "_" kada imenujete datoteku i devine slučajeve kada imenujete klasu.

MVC dijelovi moraju slijediti donju sintaksu:

File Name Naziv razreda Naziv osnovne klase Lokacija
Model File Name
Jedninski oblik naziva tablice s ekstenzijom .php npr. red.php
Naziv datoteke u Camel kućištu, npr. Red AppModel /aplikacija/modeli
kontrolor tablename_controller s ekstenzijom .php, npr.: ordcrs_controllcr.php Nazivu tablice pridodan Controller, npr.: OrdcrsController AppController /aplikacija/kontroleri
Pogled Naziv radnje u kontroleru s nastavkom .ctp, npr. add.ctp Nema nastave; a pogled c HTML oznake i PHP. ' /app/vuews/naziv kontrolera

Konfiguracija baze podataka

CakePHP vam omogućuje da konfigurirate bazu podataka u config/app.php datoteka. Omogućuje zadanu vezu s navedenim parametrima koje možete mijenjati po vlastitom izboru.

Važni parametri navedeni su u nastavku:

Baza podataka Naziv baze podataka
priključak (opcionalno)
kodiranje
TCP priključak ili Unix utičnica koja se koristi za povezivanje s poslužiteljem.
Vremenska zona Vremenska zona poslužitelja za postavljanje.
Shema Pomaže vam da odredite koju shemu možete koristiti.
unix_socket Ovu bazu podataka koriste upravljački programi za povezivanje putem Unix socket datoteka.
SSL ključ To je put datoteke do datoteke SSL ključa.
ssl_cert To je put datoteke do datoteke SSL certifikata.
ssl_ca To je put datoteke do autoriteta SSL certifikata.
Dnevnik Ovaj izraz vam pomaže da izvršite bilježenje upita.
U tome Popis upita koji se trebaju poslati poslužitelju baze podataka kad god se uspostavi veza.
Postavite na true ako želite koristiti rezervirane riječi ili posebne znakove

Kako MVC radi u CakePHP?

Sada ćemo naučiti kako MVC radi u CakePHP-u u ovom vodiču za okvir CakePHP.

To je dinamičan način za izgradnju glavnog mehanizma web aplikacije. Model, pogled i kontroler međusobno se odvajaju.

MVC arhitektura u CakePHP
MVC arhitektura u CakePHP

Cake PHP dijeli operacije u tri dijela:

  • Modeli: koriste se za sve interakcije s bazom podataka.
  • Pogledi: Koristi se za sve izlaze i prikaze.
  • Kontroleri: koriste se za kontrolu tijeka aplikacije

Evo koraka za korištenje MVC arhitekture u CakePHP-u:

Korak 1) Klijent ili korisnik stupa u interakciju s pogledom

Korak 2) Pregledajte upozorenja kontrolera određenog događaja.

Korak 3) Šalje zahtjev baze podataka modelu, a kontroler ažurira model.

Korak 4) Model upozorava pogled da se promijenio.

Korak 5) Pogled prima podatke o modelu i ažurira se prema primljenim podacima.

Zašto koristiti MVC?

  • CakePHP MVC vam pomaže da odvojite poslovnu logiku od prezentacije i dohvaćanja podataka.
  • Stranica je podijeljena na logičke dijelove kojima možete upravljati pomoću određenog kontrolera.
  • Prilikom testiranja i otklanjanja pogrešaka aplikacije, programeri vam pomažu pronaći i ispraviti pogreške bez potpunih detalja koda.

Nedostaci korištenja CakePHP okvira

  • Dokumentacijska podrška za CakePHP nije sveobuhvatna koliko bi trebala biti.
  • Da bi koristio CakePHP softver, programer mora ažurirati zadane rute za stvaranje otmjenih URL-ova, što je puno više posla u usporedbi s drugim PHP okvirima.
  • CakePHP jednosmjerno usmjeravanje u usporedbi s drugim okvirima.
  • Učenje PHP-a okvir nije lak.
  • Ponude jednosmjernog usmjeravanja još su jedan nedostatak u usporedbi s okvirima kao što je Ruby on Rails.

rezime

  • CakePHP je okvir otvorenog koda koji olakšava razvoj i održavanje PHP aplikacija.
  • CakePHP programerima omogućuje bolju kontrolu nad bazom podataka i SQL upitima.
  • Razvio ga je Michal Tatarynowicz 15. travnja 2005
  • MVC arhitektura i ugrađena provjera valjanosti najvažnije su značajke CakePHP-a
  • CakePHP standardno dolazi s jednom konfiguracijskom datotekom koja vam omogućuje izmjenu prema vašim zahtjevima.
  • Metoda konvencije imenovanja CakePHP-a omogućuje organiziranje rada web aplikacije.
  • CakePHP vam omogućuje da konfigurirate bazu podataka u datoteci config/app.php.
  • Cake PHP dijeli MVC operacije u tri dijela:
  • Modeli: koriste se za sve interakcije baze podataka, pogledi: koriste se za sve izlaze i prikaze, kontroleri: koriste se za kontrolu tijeka aplikacije
  • Najveća prednost korištenja MVC-a u CakePHP-u je ta što vam pomaže odvojiti poslovnu logiku od prezentacije i dohvaćanja podataka.
  • Najveća mana CakePHP-a je ta što dokumentacijska podrška CakePHP-a nije sveobuhvatna koliko bi trebala biti.