CakePHP-Tutorial für Anfänger: Was ist das CakePHP-Framework?

Zusammenfassung des CakePHP-Tutorials

In diesem CakePHP-Tutorial lernen wir alle grundlegenden Konzepte von Grund auf. Dieses Tutorial behandelt die Definition, den Verlauf, die Funktionen, die Ordnerstruktur und -konfiguration von CakePHP sowie kurze Einzelheiten zur Funktionsweise des CakePHP-Frameworks.

Was ist CakePHP?

KuchenPHP ist ein Open-Source-Framework für die schnelle Entwicklung und Wartung von in PHP erstellten Webanwendungen. Es basiert auf dem Konzept der MVC-Architektur, mit der sich PHP-Webanwendungen einfach und unkompliziert mit weniger Code erstellen lassen. CakePHP hilft Ihnen auch dabei, die Geschäftslogik von der Daten- und Präsentationsebene zu trennen.

Warum CakePHP Framework verwenden?

Hier sind die wichtigsten Vorteile/Vorteile der Verwendung des CakePHP-Frameworks:

  • Cake PHP ist mit Abstand eine der schnellsten Webentwicklungsplattformen.
  • CakePHP ermöglicht Entwicklern eine verbesserte Kontrolle über die Datenbank und SQL-Abfragen.
  • Es hilft Benutzern, robuste Webanwendungen zu entwickeln, ohne dass die Flexibilität ihrer Umgebung schnell verloren geht.
  • Unterstützung für PostgreSQL, SQLite, MySQL, PEAR-DB für ADODB, eine Datenbankabstraktionsbibliothek.
  • Ermöglicht suchmaschinenfreundliche URLs
  • Stellen Sie Funktionen wie Eingabevalidierungs- und Desinfektionstools bereit, die die App sicher machen.
  • Vorlagenerstellung mit vertrauter PHP-Syntax

Geschichte von CakePHP

In diesem CakePHP-Tutorial werden wir nun die Geschichte des CakePHP-Frameworks behandeln:

Jahr Milestone
2005 CakePHP wurde am 15. April 2005 von Michal Tatarynowicz entwickelt.
2005 CakePHP hat es unter der MIT-Lizenz veröffentlicht und den Community-Entwicklern zugänglich gemacht.
2005 Larry E Masters übernahm die Leitung des Entwicklers.
2006 Version 1.0 wurde veröffentlicht
2011 Version 2 wurde veröffentlicht
2014 Version 3 wurde veröffentlicht, die frühere Versionen vollständig aufhebt.
2016 Version 3.3.3. CakePHP wird mit vielen erweiterten Funktionen veröffentlicht.
2019 Version 3.7.9 ist die letzte veröffentlichte Version
2021 Das CakePHP-Kernteam gibt die sofortige Verfügbarkeit von CakePHP 4.2.2 bekannt

Funktionen von CakePHP

Hier sind wichtige Funktionen von CakePHP.

  • Aktive, freundliche Community
  • MVC-Architektur
  • Eingebaute Validierung
  • Funktioniert von jedem Website-Verzeichnis aus, ohne dass eine Apache-Konfiguration erforderlich ist.
  • Templating-Engine
  • Caching Operations
  • Einfache CRUD-Datenbankinteraktionen.
  • Integrierte Validierung
  • Handhabung von Komponenten wie E-Mail, Cookie, Sicherheit, Sitzung und Anfrage
  • Helfer anzeigen für JavaSkript, Ajax, HTML-Formulare und mehr

CakePHP-Ordnerstruktur

In diesem Tutorial zum CakePHP-Framework lernen wir nun die Ordnerstruktur von CakePHP kennen.

Nachfolgend finden Sie eine Ordnerstruktur von CakePHP:

Mappe Beschreibung
Tests Dieser Ordner enthält Testfälle für Ihre Anwendung.
Tmp Der temporäre Ordner speichert temporäre Daten.
Verkäufer In diesem Ordner können Sie CakePHP speichern und andere Anwendungsabhängigkeiten werden installiert.
Webroot Der Webroot speichert alle Dateien, die öffentlich zugänglich sein sollen.
Kasten Der Ordner „bin“ enthält die ausführbaren Dateien der Cake-Konsole.
Logs Es enthält Ihre Protokolldateien, die von Ihrer Protokollkonfiguration abhängen.
Config Im Konfigurationsordner werden die von CakePHP verwendeten Konfigurationsdateien gespeichert
Plugins Dieser Ordner enthält Plugins für die Anwendung. Hier werden die von Ihrer Anwendung verwendeten Plugins gespeichert.
Src Es enthält eine Konsolenaufgabe und Befehle zum Verwalten Ihrer Anwendung.

Locale Speichert String-Dateien zur Internationalisierung.

Modell Enthält die Tabellen, Entitäten und Verhaltensweisen Ihrer Anwendung.

Konfiguration von CakePHP

CakePHP wird standardmäßig mit einer einzigen Konfigurationsdatei geliefert. Außerdem können Sie es entsprechend Ihren Anforderungen ändern. Zu diesem Zweck gibt es einen Ordner namens „config“.

Variablennamen Beschreibung
Debuggen Ermöglicht Ihnen, die Debug-Ausgabe von CakePHP zu ändern.
App Namespace Hilft Ihnen, unten App-Klassen zu finden.
App.baseUrl Entfernen Sie die Kommentarfunktion für dieses Schlüsselwort, wenn Sie Apaches mod_rewrite nicht mit CakePHP verwenden möchten.
App-Kodierung Mit diesem Befehl können Sie definieren, welche Codierung Ihre Anwendung verwendet.
App.base Es handelt sich um ein Basisverzeichnis, in dem sich die App befindet. Bei „false“ wird dies automatisch erkannt.
App.fullBaseUrl Qualifizierter Domainname
App.webroot Es ist ein Webroot-Verzeichnis.
App.wwwRoot Der Dateipfad zum Webroot.
App.jsBaseUrl Pfad zum öffentlichen js-Verzeichnis.
App-Pfade Konfigurieren Sie Pfade für nicht klassenbasierte Ressourcen.
App.cssBaseUrl Es handelt sich um einen Webpfad zum öffentlichen CSS-Verzeichnis unter Webroot.
Sicherheitssalz Es handelt sich um eine zufällige Zeichenfolge, die beim Hashing verwendet wird.
Asset.timestamp Mit dieser Variable können Sie einen Zeitstempel anhängen, wenn Sie geeignete Helfer verwenden.

Cake-PHP-Namenskonventionen

Cake folgt der Idee der Konvention über die Konfiguration. Die Methode der Namenskonvention ermöglicht es Ihnen, den Betrieb der Webanwendung zu organisieren. Bei dieser Methode müssen mehrere Wörter im Namen bei der Benennung der Datei durch „_“ und bei der Benennung der Klasse durch Camel Cases getrennt werden.

Die MVC-Teile müssen der unten angegebenen Syntax folgen:

Dateiname Klassenname Basisklassenname Standort
Modell Dateiname
Singularform des Tabellennamens mit der Erweiterung .php, z. B. order.php
Der Dateiname in einem Camel-Fall, z. B.: Order AppModell /app/models
Controller Tabellenname_Controller mit der Erweiterung .php, z. B. ordcrs_controllcr.php Der an den Tabellennamen angehängte Controller, z. B.: OrdcrsController AppController /app/controllers
Anzeigen Der Aktionsname im Controller mit der Erweiterung .ctp, z. B. add.ctp Keine Klassen; eine Ansicht c HTML-Tags und PHP. ' /app/vuews/Controller-Name

Datenbankkonfiguration

Mit CakePHP können Sie die Datenbank konfigurieren config/app.php Datei. Es bietet eine Standardverbindung mit bereitgestellten Parametern, die Sie nach Ihren Wünschen ändern können.

Nachfolgend sind wichtige Parameter aufgeführt:

Database Name der Datenbank
Port (optional)
Codierung
Der TCP-Port oder Unix-Socket, der für die Verbindung zum Server verwendet wird.
Zeitzone Die festzulegende Serverzeitzone.
Schema Es hilft Ihnen bei der Angabe, welches Schema Sie verwenden können.
unix_socket Diese Datenbank wird von Treibern verwendet, um über Unix-Socket-Dateien eine Verbindung herzustellen.
SSL-Schlüssel Es handelt sich um einen Dateipfad zur SSL-Schlüsseldatei.
ssl_cert Es handelt sich um einen Dateipfad zur SSL-Zertifikatdatei.
ssl_ca Es handelt sich um einen Dateipfad zur SSL-Zertifizierungsstelle.
Log Dieser Begriff hilft Ihnen bei der Abfrageprotokollierung.
Drin Eine Liste von Abfragen, die bei jedem Verbindungsaufbau an den Datenbankserver gesendet werden sollen.
Legen Sie den Wert auf „true“ fest, wenn Sie reservierte Wörter oder Sonderzeichen verwenden möchten

Wie funktioniert MVC in CakePHP?

In diesem CakePHP-Framework-Tutorial erfahren wir nun, wie MVC in CakePHP funktioniert.

Es handelt sich um eine dynamische Möglichkeit, den Hauptmechanismus einer Webanwendung zu erstellen. Das Modell, die Ansicht und der Controller trennen einander.

MVC-Architektur in CakePHP
MVC-Architektur in CakePHP

Cake PHP teilt die Operationen in drei Teile auf:

  • Modelle: Wird für alle Datenbankinteraktionen verwendet.
  • Ansichten: Wird für alle Ausgaben und Anzeigen verwendet.
  • Controller: Werden zur Steuerung des Anwendungsflusses verwendet

Hier sind die Schritte zur Verwendung der MVC-Architektur in CakePHP:

Schritt 1) Der Client oder Benutzer interagiert mit der Ansicht

Schritt 2) Zeigen Sie den Alert-Controller des jeweiligen Ereignisses an.

Schritt 3) Es sendet eine Datenbankanforderung an das Modell und der Controller aktualisiert das Modell.

Schritt 4) Das Modell weist darauf hin, dass es sich geändert hat.

Schritt 5) View empfängt Modelldaten und aktualisiert sich entsprechend den empfangenen Daten.

Warum MVC verwenden?

  • CakePHP MVC hilft Ihnen, Geschäftslogik von Präsentation und Datenabruf zu trennen.
  • Eine Site ist in logische Abschnitte unterteilt, die Sie mit einem bestimmten Controller steuern können.
  • Beim Testen und Debuggen einer Anwendung kann Ihnen jeder Entwickler dabei helfen, Fehler zu finden und zu beheben, ohne über vollständige Codedetails zu verfügen.

Nachteile der Verwendung des CakePHP-Frameworks

  • Die von CakePHP unterstützte Dokumentation ist nicht so umfassend, wie sie sein sollte.
  • Um die CakePHP-Software verwenden zu können, muss der Entwickler die Standardrouten zum Erstellen ausgefallener URLs aktualisieren, was im Vergleich zu anderen PHP-Frameworks viel mehr Arbeit bedeutet.
  • CakePHP One-Way-Routing im Vergleich zu anderen Frameworks.
  • PHP lernen Rahmen ist nicht einfach.
  • Ein weiterer Nachteil im Vergleich zu Frameworks wie Ruby on Rails ist das unidirektionale Routing.

Zusammenfassung

  • CakePHP ist ein Open-Source-Framework, das die Entwicklung und Wartung von PHP-Apps erheblich vereinfacht.
  • CakePHP ermöglicht Entwicklern eine verbesserte Kontrolle über die Datenbank und SQL-Abfragen.
  • Es wurde am 15. April 2005 von Michal Tatarynowicz entwickelt
  • MVC-Architektur und integrierte Validierung sind die wichtigsten Funktionen von CakePHP
  • CakePHP wird standardmäßig mit einer einzigen Konfigurationsdatei geliefert, die es Ihnen ermöglicht, diese entsprechend Ihren Anforderungen zu ändern.
  • Mithilfe der Namenskonventionsmethode von CakePHP können Sie den Betrieb der Webanwendung organisieren.
  • Mit CakePHP können Sie die Datenbank in der Datei config/app.php konfigurieren.
  • Cake PHP teilt MVC-Operationen in drei Teile auf:
  • Modelle: Wird für alle Datenbankinteraktionen verwendet. Ansichten: Wird für alle Ausgaben und Anzeigen verwendet. Controller: Wird zur Steuerung des Anwendungsflusses verwendet
  • Der größte Vorteil der Verwendung von MVC in CakePHP besteht darin, dass Sie damit die Geschäftslogik von der Präsentation und dem Datenabruf trennen können.
  • Der größte Nachteil von CakePHP besteht darin, dass die Dokumentationsunterstützung von CakePHP nicht so umfassend ist, wie sie sein sollte.