CakePHP Tutorial για αρχάριους: Τι είναι το CakePHP Framework;
Περίληψη φροντιστηρίου CakePHP
Σε αυτό το σεμινάριο CakePHP, θα μάθουμε όλες τις βασικές έννοιες από την αρχή. Αυτό το σεμινάριο καλύπτει τον ορισμό του CakePHP, το ιστορικό, τις δυνατότητες, τη δομή και τη διαμόρφωση φακέλων και σύντομες λεπτομέρειες σχετικά με τον τρόπο λειτουργίας του πλαισίου CakePHP.
Τι είναι το CakePHP;
CakePHP είναι ένα πλαίσιο ανοιχτού κώδικα για την ταχεία ανάπτυξη και συντήρηση διαδικτυακών εφαρμογών ενσωματωμένων σε PHP. Βασίζεται στην έννοια της αρχιτεκτονικής MVC, η οποία βοηθά στη δημιουργία εφαρμογών ιστού PHP εύκολα και απλά με λιγότερο κώδικα. Το CakePHP σας βοηθά επίσης να διαχωρίσετε την επιχειρηματική λογική από το επίπεδο δεδομένων και το επίπεδο παρουσίασης.
Γιατί να χρησιμοποιήσετε το CakePHP Framework;
Ακολουθούν τα κύρια οφέλη/πλεονεκτήματα της χρήσης του πλαισίου CakePHP:
- Η Cake PHP είναι μακράν, μια από τις πιο γρήγορες πλατφόρμες ανάπτυξης ιστού.
- Το CakePHP επιτρέπει στους προγραμματιστές να αποκτήσουν βελτιωμένο έλεγχο στη βάση δεδομένων και τα ερωτήματα SQL.
- Βοηθά τους χρήστες να αναπτύξουν ισχυρές εφαρμογές Ιστού χωρίς να χάνουν γρήγορα την ευελιξία του περιβάλλοντος.
- Υποστήριξη PostgreSQL, SQLite, MySQL, PEAR-DB για ADODB, μια βιβλιοθήκη αφαίρεσης βάσης δεδομένων.
- Διευκολύνει τις διευθύνσεις URL φιλικές προς τις μηχανές αναζήτησης
- Παρέχετε λειτουργίες όπως επικύρωση εισόδου και εργαλεία απολύμανσης που καθιστούν την εφαρμογή ασφαλή.
- Πρότυπο με οικεία σύνταξη PHP
Ιστορία του CakePHP
Τώρα σε αυτό το σεμινάριο CakePHP, θα καλύψουμε την ιστορία του πλαισίου CakePHP:
Έτος | Milestone |
---|---|
2005 | Το CakePHP αναπτύχθηκε από τον Michal Tatarynowicz στις 15 Απριλίου 2005. |
2005 | Το CakePHP το δημοσίευσε με άδεια MIT και το άνοιξε στους προγραμματιστές της κοινότητας. |
2005 | Ο Larry E Masters ανέλαβε ως κύριος προγραμματιστής. |
2006 | Κυκλοφόρησε η έκδοση 1.0 |
2011 | Κυκλοφόρησε η έκδοση 2 |
2014 | Κυκλοφόρησε η έκδοση 3 η οποία ανακαλεί πλήρως τις προηγούμενες εκδόσεις. |
2016 | Έκδοση 3.3.3. Το Of CakePHP κυκλοφορεί με πολλές προηγμένες δυνατότητες. |
2019 | Η έκδοση 3.7.9 είναι η τελευταία έκδοση που κυκλοφόρησε |
2021 | Η βασική ομάδα του CakePHP ανακοινώνει την άμεση διαθεσιμότητα του CakePHP 4.2.2 |
Χαρακτηριστικά του CakePHP
Ακολουθούν σημαντικά χαρακτηριστικά του CakePHP.
- Δραστήρια, φιλική κοινότητα
- Αρχιτεκτονική MVC
- Ενσωματωμένη επικύρωση
- Λειτουργεί από οποιονδήποτε κατάλογο ιστοτόπων, με ορισμένες ή καθόλου ρυθμίσεις παραμέτρων Apache.
- Μηχανή προτύπων
- Προσωρινής αποθήκευσης Operaσεις
- Εύκολες αλληλεπιδράσεις βάσεων δεδομένων CRUD.
- Ενσωματωμένη επικύρωση
- Στοιχεία Handlin όπως Email, Cookie, Security, Session και Request
- Προβολή βοηθών για JavaΓραφή, Ajax, Φόρμες HTML και άλλα
CakePHP- Δομή φακέλου
Τώρα σε αυτό το σεμινάριο πλαισίου CakePHP, θα μάθουμε για τη δομή του φακέλου CakePHP.
Παρακάτω είναι μια δομή φακέλου του CakePHP:
Folder | Descriptιόν |
---|---|
Δοκιμές | Αυτός ο φάκελος περιέχει δοκιμαστικές περιπτώσεις για την εφαρμογή σας. |
tmp | Ο φάκελος temp αποθηκεύει προσωρινά δεδομένα. |
Πάροχος υπηρεσιών | Αυτός ο φάκελος σάς βοηθά να αποθηκεύσετε το CakePHP και θα εγκατασταθούν άλλες εξαρτήσεις εφαρμογών. |
Webroot | Τα Διαχωριστικά Webroot αποθηκεύει όλα τα αρχεία που θέλετε να είναι δημόσια προσβάσιμα. |
Bin | Ο φάκελος bin περιέχει τα εκτελέσιμα αρχεία της κονσόλας Cake. |
Logs | Περιέχει τα αρχεία καταγραφής σας, το οποίο εξαρτάται από τη διαμόρφωση του αρχείου καταγραφής σας. |
Config | Ο φάκελος config αποθηκεύει τα αρχεία διαμόρφωσης που χρησιμοποιεί το CakePHP |
Πρόσθετα | Αυτός ο φάκελος περιέχει πρόσθετα για την εφαρμογή. είναι όπου αποθηκεύονται τα Πρόσθετα που χρησιμοποιεί η εφαρμογή σας. |
src | Περιέχει μια εργασία κονσόλας και εντολές για τη διαχείριση της εφαρμογής σας.
Locale Αποθηκεύει αρχεία συμβολοσειρών για διεθνοποίηση. Μοντέλο Περιέχει τους πίνακες, τις οντότητες και τις συμπεριφορές της εφαρμογής σας. |
Διαμόρφωση του CakePHP
Το CakePHP έρχεται με ένα μόνο αρχείο διαμόρφωσης από προεπιλογή. Σας επιτρέπει επίσης να το τροποποιήσετε σύμφωνα με τις απαιτήσεις σας. Υπάρχει ένας φάκελος που ονομάζεται "config" που δίνεται για αυτό το σκοπό.
Μεταβλητό όνομα | Descriptιόν |
---|---|
Debug | Σας επιτρέπει να αλλάξετε την έξοδο εντοπισμού σφαλμάτων CakePHP. |
App.namespace | Σας βοηθά να βρείτε κατηγορίες εφαρμογών κάτω από. |
App.baseUrl | Καταργήστε το σχόλιο αυτής της λέξης-κλειδιού όταν δεν θέλετε να χρησιμοποιήσετε το mod_rewrite του Apache με το CakePHP. |
Κωδικοποίηση εφαρμογής | Αυτή η εντολή σάς επιτρέπει να ορίσετε τι χρησιμοποιεί η κωδικοποίηση της εφαρμογής σας. |
App.base | Είναι ένας βασικός κατάλογος στον οποίο βρίσκεται η εφαρμογή Εάν είναι ψευδής, θα εντοπιστεί αυτόματα. |
App.fullBaseUrl | Πιστοποιημένο όνομα τομέα |
App.webroot | Είναι ένας κατάλογος webroot. |
App.wwwRoot | Η διαδρομή αρχείου προς το webroot. |
App.jsBaseUrl | Διαδρομή προς τον δημόσιο κατάλογο js. |
App.paths | Διαμόρφωση μονοπατιών για πόρους που δεν βασίζονται σε κλάσεις. |
App.cssBaseUrl | Είναι μια διαδρομή web προς τον δημόσιο κατάλογο css στο webroot. |
Ασφάλεια.αλάτι | Είναι μια τυχαία συμβολοσειρά που χρησιμοποιείται στον κατακερματισμό. |
Asset.timestamp | Αυτή η μεταβλητή σάς επιτρέπει να προσαρτάτε μια χρονική σήμανση όταν χρησιμοποιείτε κατάλληλους βοηθούς. |
Cake- Συμβάσεις ονομασίας PHP
Το κέικ ακολουθεί την ιδέα της σύμβασης πάνω από τη διαμόρφωση. Η μέθοδος σύμβασης ονομασίας σάς επιτρέπει να οργανώσετε τη λειτουργία της διαδικτυακής εφαρμογής. Σε αυτή τη μέθοδο, περισσότερες από μία λέξεις στο όνομα πρέπει να διαχωρίζονται με "_" κατά την ονομασία του αρχείου και θήκες camel κατά την ονομασία της κλάσης.
Τα τμήματα MVC πρέπει να ακολουθούν την παρακάτω σύνταξη:
Όνομα αρχείου | Ονομα τάξης | Όνομα βασικής κλάσης | Τοποθεσία | |
---|---|---|---|---|
Μοντέλο | Όνομα αρχείου Ενικός τύπος του ονόματος του πίνακα με επέκταση .php π.χ.: order.php |
Το όνομα αρχείου σε μια θήκη Camel, π.χ.: Παραγγελία | AppModel | /app/models |
ελεγκτής | tablename_controller με επέκταση .php, π.χ.: ordcrs_controllcr.php | Το όνομα του πίνακα επισυνάπτεται Ελεγκτής, π.χ. OrdcrsController | AppController | /app/controllers |
Προβολή | Το όνομα της ενέργειας στον ελεγκτή με επέκταση .ctp, π.χ.: add.ctp | Χωρίς μαθήματα. μια προβολή c ετικέτες HTML και PHP. ' | /app/vuews/όνομα ελεγκτή |
Διαμόρφωση βάσεων δεδομένων
Το CakePHP σάς επιτρέπει να ρυθμίσετε τις παραμέτρους της βάσης δεδομένων config / app.php αρχείο. Παρέχει προεπιλεγμένη σύνδεση με παρεχόμενες παραμέτρους τις οποίες μπορείτε να τροποποιήσετε ανάλογα με την επιλογή σας.
Σημαντικές παράμετροι δίνονται παρακάτω:
βάση δεδομένων | Όνομα βάσης δεδομένων |
---|---|
θύρα (προαιρετικό) κωδικοποίησης |
Η θύρα TCP ή η υποδοχή Unix που χρησιμοποιείται για τη σύνδεση στο διακομιστή. |
Χρονική ζώνη | Ζώνη ώρας διακομιστή για ρύθμιση. |
Schema | Σας βοηθά να καθορίσετε ποιο σχήμα μπορείτε να χρησιμοποιήσετε. |
unix_socket | Αυτή η βάση δεδομένων χρησιμοποιείται από προγράμματα οδήγησης για σύνδεση μέσω αρχείων υποδοχής Unix. |
Κλειδί SSL | Είναι μια διαδρομή αρχείου προς το αρχείο κλειδιού SSL. |
ssl_cert | Είναι μια διαδρομή αρχείου προς το αρχείο πιστοποιητικού SSL. |
ssl_ca | Είναι μια διαδρομή αρχείου προς την αρχή πιστοποιητικού SSL. |
Ιστορικό | Αυτός ο όρος σας βοηθά να εκτελέσετε καταγραφή ερωτημάτων. |
Μέσα σε αυτό | Μια λίστα ερωτημάτων που πρέπει να αποστέλλονται στον διακομιστή της βάσης δεδομένων κάθε φορά που δημιουργείται η σύνδεση. |
Ορίστε το σε true εάν θέλετε να χρησιμοποιήσετε δεσμευμένες λέξεις ή ειδικούς χαρακτήρες |
Πώς λειτουργεί το MVC στο CakePHP;
Τώρα, θα μάθουμε πώς λειτουργεί το MVC στο CakePHP σε αυτό το σεμινάριο πλαισίου CakePHP.
Είναι ένας δυναμικός τρόπος δημιουργίας του αρχικού μηχανισμού μιας διαδικτυακής εφαρμογής. Το μοντέλο, η προβολή και ο ελεγκτής- χωρίζουν το ένα το άλλο.
Το Cake PHP χωρίζει τις λειτουργίες σε τρία μέρη:
- Μοντέλα: Χρησιμοποιούνται για όλες τις αλληλεπιδράσεις βάσεων δεδομένων.
- Προβολές: Χρησιμοποιείται για όλες τις εξόδους και τις οθόνες.
- Ελεγκτές: Χρησιμοποιούνται για τον έλεγχο της ροής της εφαρμογής
Ακολουθούν τα βήματα για να χρησιμοποιήσετε την αρχιτεκτονική MVC στο CakePHP:
Βήμα 1) Ο πελάτης ή ο χρήστης αλληλεπιδρά με την προβολή
Βήμα 2) Προβολή ελεγκτή ειδοποιήσεων για το συγκεκριμένο συμβάν.
Βήμα 3) Στέλνει ένα αίτημα βάσης δεδομένων στο μοντέλο και ο ελεγκτής ενημερώνει το μοντέλο.
Βήμα 4) Το μοντέλο ειδοποιεί την άποψη ότι έχει αλλάξει.
Βήμα 5) Το View λαμβάνει δεδομένα μοντέλου και ενημερώνεται σύμφωνα με τα δεδομένα που έλαβε.
Γιατί να χρησιμοποιήσετε το MVC;
- Το CakePHP MVC σάς βοηθά να διαχωρίσετε την επιχειρηματική λογική από την παρουσίαση και την ανάκτηση δεδομένων.
- Ένας ιστότοπος χωρίζεται σε λογικές ενότητες τις οποίες μπορείτε να διαχειριστείτε με έναν συγκεκριμένο ελεγκτή.
- Κατά τη δοκιμή και τον εντοπισμό σφαλμάτων μιας εφαρμογής, οποιοσδήποτε προγραμματιστής σάς βοηθά να εντοπίσετε και να διορθώσετε τα σφάλματα χωρίς να έχετε πλήρεις λεπτομέρειες του κώδικα.
Μειονεκτήματα της χρήσης του πλαισίου CakePHP
- Η τεκμηρίωση που υποστηρίζει το CakePHP δεν είναι τόσο ολοκληρωμένη όσο θα έπρεπε.
- Για να χρησιμοποιήσει το λογισμικό CakePHP, ο προγραμματιστής πρέπει να ενημερώσει τις προεπιλεγμένες διαδρομές για τη δημιουργία φανταχτερών URL, κάτι που είναι πολύ περισσότερη δουλειά σε σύγκριση με άλλα πλαίσια PHP.
- CakePHP μονόδρομη δρομολόγηση σε σύγκριση με άλλα πλαίσια.
- Εκμάθηση PHP πλαίσιο δεν είναι εύκολο.
- Η προσφορά δρομολόγησης μονής κατεύθυνσης είναι ένα άλλο μειονέκτημα σε σύγκριση με πλαίσια όπως το Ruby on Rails.
Σύνοψη
- Το CakePHP είναι ένα πλαίσιο ανοιχτού κώδικα που βοηθά στην πολύ ευκολότερη ανάπτυξη και συντήρηση εφαρμογών PHP.
- Το CakePHP επιτρέπει στους προγραμματιστές να αποκτήσουν βελτιωμένο έλεγχο στη βάση δεδομένων και τα ερωτήματα SQL.
- Αναπτύχθηκε από τον Michal Tatarynowicz στις 15 Απριλίου 2005
- Η αρχιτεκτονική MVC και η ενσωματωμένη επικύρωση είναι τα πιο σημαντικά χαρακτηριστικά του CakePHP
- Το CakePHP έρχεται με ένα μόνο αρχείο διαμόρφωσης από προεπιλογή που σας επιτρέπει να το τροποποιήσετε σύμφωνα με τις απαιτήσεις σας.
- Η μέθοδος σύμβασης ονομασίας του CakePHP σας επιτρέπει να οργανώσετε τη λειτουργία της διαδικτυακής εφαρμογής.
- Το CakePHP σάς επιτρέπει να διαμορφώσετε τη βάση δεδομένων σε αρχείο config/app.php.
- Το Cake PHP χωρίζει τις λειτουργίες MVC σε τρία μέρη:
- Μοντέλα: Χρησιμοποιούνται για όλες τις αλληλεπιδράσεις βάσεων δεδομένων, Προβολές: Χρησιμοποιούνται για όλες τις εξόδους και οθόνες, Ελεγκτές: Χρησιμοποιούνται για τον έλεγχο της ροής της εφαρμογής
- Το μεγαλύτερο πλεονέκτημα της χρήσης MVC στο CakePHP είναι ότι σας βοηθά να διαχωρίσετε την επιχειρηματική λογική από την παρουσίαση και την ανάκτηση δεδομένων.
- Το μεγαλύτερο μειονέκτημα του CakePHP είναι ότι η τεκμηρίωση που υποστηρίζει το CakePHP δεν είναι τόσο ολοκληρωμένη όσο θα έπρεπε.