Heim Backend-Entwicklung PHP-Tutorial MVC-Programmierung in PHP verstehen – Einführung in das MVC-Framework

MVC-Programmierung in PHP verstehen – Einführung in das MVC-Framework

Dec 01, 2016 am 11:11 AM
mvc

【Was ist MVC? ]

MVC ist ein Konzept, mit dem Sie „drei Teile (nämlich den vollständigen Namen von MVC, Modell, Ansicht und Controller)“ harmonisch kombinieren können, um eine komplexe Anwendung zu bilden. Ein Auto ist ein sehr gutes Beispiel für MVC im wirklichen Leben. Wenn wir uns ein Auto ansehen, schauen wir uns zwei Teile an: das Innere und das Äußere. Beides ist untrennbar mit einem Controller verbunden: dem Fahrer. Das Bremssystem, das Lenkrad und andere Steuerungssysteme stellen das Modell dar: Sie übernehmen die Steuerungsmethoden vom Fahrer (Controller) und wenden sie auf den Innen- und Außenbereich an (Ansicht).

【MVC im Internet】

Die vom MVC-Framework abgedeckten Konzepte sind recht einfach und äußerst flexibel. Das Grundkonzept besteht darin, dass Sie über einen einzigen Controller (z. B. index.php) verfügen, der alle Anwendungen innerhalb des Frameworks steuert, die auf Parameteranforderungen basieren. Dieser Controller enthält normalerweise (mindestens) einen Parameter, der das Modell definiert, ein Ereignis und einen GET-Parameter. Auf diese Weise kann der Controller alle Anfragen bestätigen und die entsprechenden Ereignisse ausführen. Beispielsweise wird eine Anfrage wie diese /index.php?module=foo&event=bar wahrscheinlich verwendet, um eine Klasse namens foo zu laden und dann foo::bar()[was eine bar()-Funktion ist] auszuführen. Die Vorteile davon sind:

Eine Schnittstelle, die allen Anwendungen entspricht

Es ist sehr mühsam, unzählige Codes gleichzeitig in einer Anwendung zu verwalten, da jeder Codeabschnitt seinen eigenen relativen Pfad hat und Datenbankverknüpfung, Verifizierung usw. Dadurch ersparen Sie sich diesbezüglich die Mühe und können Code zusammenführen und wiederverwenden

【Warum das eigene MVC-Framework des Autors erstellen? ]

Bisher habe ich nicht allzu viele in PHP geschriebene MVC-Frameworks gesehen. Tatsächlich kenne ich nur eines – Solar, das vollständig in PHP5 geschrieben ist. Das andere ist Cake, ein RoR, das versucht, PHP zu sein (Rubyalign=centerbgColor=#e3e3e3border=1>

<?php 
 require_once('config.php');//Otherrequires,DBinfo,etc. 
 $APP_DB='mydb'; 
 $APP_REQUIRE_LOGIN=false;//Settotrueifscriptrequireslogin 
 $APP_TEMPLATE_FILE='foo.php';//Smartytemplate 
 $APP_TITLE='MyApplication'; 
 if($APP_REQUIRE_LOGIN==true){ 
if(!isset($_SESSION['userID'])){ 
 header("Location:/path/to/login.php"); 
 exit(); 
} 
 } 
 $db=DB::connect('mysql://'.$DB_USER.':'.$DB_PASS.'@localhost/'.$APP_DB); 
 if(!PEAR::isError($db)){ 
$db->setFetchMode(DB_FETCHMODE_ASSOC); 
 }else{ 
die($db->getMessage()); 
 } 
 //Putyourlogichere 
 //Outputthetemplate 
 include_once(APP_TEMPLATE_PATH.'/header.php'); 
 include_once(APP_TEMPLATE_PATH.'/'.$APP_TEMPLATE_FILE); 
 include_once(APP_TEMPLATE_PATH.'/footer.php'); 
?>
Nach dem Login kopieren


OMG, wenn ich mir nur diesen Code anschaue, erschaudere ich. Dieser Absatz Das Konzept Der Code soll sicherstellen, dass jede Anwendung an diese Verarbeitungsmethode angepasst werden kann. Ich kann beispielsweise template.txt in myapp.php kopieren, ein paar Variablen ändern und schon funktioniert diese Organisation Gibt es einige gravierende Nachteile des strikten Ansatzes:

Was passiert, wenn mein Chef möchte, dass der Autor in einigen Fällen myapp.php zur Ausgabe von PDF, in einigen Fällen von HTML und in einigen Fällen von direkt übermittelten XML-Anfragen verwendet? Was mache ich?

Was mache ich, wenn diese Anwendung eine IMAP- oder LDAP-Authentifizierung erfordert

Wie gehe ich mit den verschiedenen Codes um (einschließlich Bearbeiten, Aktualisieren und Löschen)?
Wie gehe ich mit der mehrstufigen Verifizierung um (Administrator vs. Nicht-Administrator)?
Wie aktiviere ich das Ausgabe-Caching? Bitte geben Sie die Quelle für den Nachdruck an

【Neuer Weg】 】

Werfen Sie alles in dieses MVC-Framework und Sie werden feststellen, dass das Leben so einfach ist. Bitte vergleichen Sie den folgenden Code:


<?php 
 classmyappextendsFR_Auth_User 
 { 
publicfunction__construct() 
{ 
 parent::__construct(); 
} 
 publicfunction__default() 
 { 
//Dosomethinghere 
 } 
 publicfunctiondelete() 
 {} 
 publicfunction__destruct() 
 { 
parent::__destruct(); 
 } 
} 
?>
Nach dem Login kopieren
Hinweis: Dieser Code ist offensichtlich Wird nicht verwendet, um eine Verbindung zu einer Datenbank herzustellen, festzustellen, ob ein Benutzer angemeldet ist, oder um andere Informationen auszugeben.


Wenn ich mich bei LDAP authentifizieren möchte, kann ich FR_Auth_LDAP einrichten. B. $_GET['output']) und kann jederzeit in PDF oder SOAP konvertiert werden. Der Ereignishandler delete ist nur für das Löschen verantwortlich, da dieses Modul über eine Instanz der FR_User-Klasse verfügt Benutzer hat sich angemeldet usw. Smarty steuert als Template-Engine den Cache, aber der Controller kann auch einen Teil des Caches steuern.

Von der oben erwähnten alten Methode zur MVC-Methode Für viele Menschen ein neues und ungewohntes Konzept, aber wenn man erst einmal auf ein solches Konzept umgestiegen ist, wird es ziemlich schwierig sein, wieder zurück zu wechseln

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP MVC-Architektur: Webanwendungen für die Zukunft erstellen PHP MVC-Architektur: Webanwendungen für die Zukunft erstellen Mar 03, 2024 am 09:01 AM

Einführung In der sich schnell entwickelnden digitalen Welt von heute ist es von entscheidender Bedeutung, robuste, flexible und wartbare WEB-Anwendungen zu erstellen. Die PHPmvc-Architektur bietet eine ideale Lösung, um dieses Ziel zu erreichen. MVC (Model-View-Controller) ist ein weit verbreitetes Entwurfsmuster, das verschiedene Aspekte einer Anwendung in unabhängige Komponenten unterteilt. Die Grundlage der MVC-Architektur Das Kernprinzip der MVC-Architektur ist die Trennung von Belangen: Modell: Kapselt die Daten und Geschäftslogik der Anwendung. Ansicht: Verantwortlich für die Präsentation von Daten und die Abwicklung der Benutzerinteraktion. Controller: Koordiniert die Interaktion zwischen Modellen und Ansichten, verwaltet Benutzeranfragen und Geschäftslogik. PHPMVC-Architektur Die phpMVC-Architektur folgt dem traditionellen MVC-Muster, führt aber auch sprachspezifische Funktionen ein. Das Folgende ist PHPMVC

Eine erweiterte Anleitung zur PHP-MVC-Architektur: Erweiterte Funktionen freischalten Eine erweiterte Anleitung zur PHP-MVC-Architektur: Erweiterte Funktionen freischalten Mar 03, 2024 am 09:23 AM

Die MVC-Architektur (Model-View-Controller) ist eines der beliebtesten Muster in der PHP-Entwicklung, da sie eine klare Struktur zum Organisieren von Code bietet und die Entwicklung von WEB-Anwendungen vereinfacht. Während die grundlegenden MVC-Prinzipien für die meisten Webanwendungen ausreichend sind, gibt es einige Einschränkungen für Anwendungen, die komplexe Daten verarbeiten oder erweiterte Funktionen implementieren müssen. Trennen der Modellschicht Das Trennen der Modellschicht ist eine gängige Technik in der fortgeschrittenen MVC-Architektur. Dabei wird eine Modellklasse in kleinere Unterklassen zerlegt, die sich jeweils auf eine bestimmte Funktionalität konzentrieren. Beispielsweise könnten Sie für eine E-Commerce-Anwendung die Hauptmodellklasse in ein Bestellmodell, ein Produktmodell und ein Kundenmodell zerlegen. Diese Trennung trägt dazu bei, die Wartbarkeit und Wiederverwendbarkeit des Codes zu verbessern. Verwenden Sie die Abhängigkeitsinjektion

So implementieren Sie das MVC-Muster mit PHP So implementieren Sie das MVC-Muster mit PHP Jun 07, 2023 pm 03:40 PM

Das MVC-Muster (Model-View-Controller) ist ein häufig verwendetes Software-Designmuster, das Entwicklern dabei helfen kann, Code besser zu organisieren und zu verwalten. Das MVC-Muster unterteilt die Anwendung in drei Teile: Modell, Ansicht und Controller. Jeder Teil hat seine eigene Rolle und Verantwortlichkeiten. In diesem Artikel besprechen wir, wie man das MVC-Muster mit PHP implementiert. Modell Ein Modell repräsentiert die Daten und Datenverarbeitung einer Anwendung. allgemein,

Entdecken Sie den Erfolg des SpringMVC-Frameworks: Warum es so beliebt ist Entdecken Sie den Erfolg des SpringMVC-Frameworks: Warum es so beliebt ist Jan 24, 2024 am 08:39 AM

SpringMVC-Framework entschlüsselt: Warum ist es so beliebt? Es werden spezifische Codebeispiele benötigt. Einführung: Im heutigen Bereich der Softwareentwicklung ist das SpringMVC-Framework bei Entwicklern zu einer sehr beliebten Wahl geworden. Es handelt sich um ein Web-Framework, das auf dem MVC-Architekturmuster basiert und eine flexible, leichte und effiziente Entwicklungsmethode bietet. Dieser Artikel befasst sich mit dem Charme des SpringMVC-Frameworks und demonstriert seine Leistungsfähigkeit anhand konkreter Codebeispiele. 1. Vorteile des SpringMVC-Frameworks Flexible Konfigurationsmethode Spr

So verwenden Sie die MVC-Architektur zum Entwerfen von Projekten in PHP So verwenden Sie die MVC-Architektur zum Entwerfen von Projekten in PHP Jun 27, 2023 pm 12:18 PM

In der Webentwicklung ist MVC (Model-View-Controller) ein häufig verwendetes Architekturmuster zur Verarbeitung und Verwaltung der Daten, Benutzeroberfläche und Steuerlogik einer Anwendung. Als beliebte Webentwicklungssprache kann PHP auch die MVC-Architektur zum Entwerfen und Erstellen von Webanwendungen nutzen. In diesem Artikel wird die Verwendung der MVC-Architektur zum Entwerfen von Projekten in PHP vorgestellt und deren Vorteile und Vorsichtsmaßnahmen erläutert. Was MVCMVC ist, ist ein Software-Architekturmuster, das häufig in Webanwendungen verwendet wird. MV

MVC mit dem PHP8-Framework entwickeln: Wichtige Konzepte und Techniken, die Anfänger kennen müssen MVC mit dem PHP8-Framework entwickeln: Wichtige Konzepte und Techniken, die Anfänger kennen müssen Sep 11, 2023 am 09:43 AM

MVC mit dem PHP8-Framework entwickeln: Wichtige Konzepte und Techniken, die Anfänger kennen müssen. Einführung: Angesichts der rasanten Entwicklung des Internets spielt die Webentwicklung in der heutigen Softwareentwicklungsbranche eine wichtige Rolle. PHP wird häufig für die Webentwicklung verwendet und es gibt viele ausgereifte Frameworks, die Entwicklern helfen, Anwendungen effizienter zu erstellen. Unter diesen ist die MVC-Architektur (Model-View-Controller) eines der am weitesten verbreiteten und am weitesten verbreiteten Muster. In diesem Artikel wird vorgestellt, wie Anfänger das PHP8-Framework zum Entwickeln von MVC-Anwendungen verwenden können.

MVC mit PHP8 Framework entwickeln: Eine Schritt-für-Schritt-Anleitung MVC mit PHP8 Framework entwickeln: Eine Schritt-für-Schritt-Anleitung Sep 11, 2023 am 10:05 AM

Entwickeln von MVC mit dem PHP8-Framework: Eine Schritt-für-Schritt-Anleitung Einführung: MVC (Model-View-Controller) ist ein häufig verwendetes Software-Architekturmuster, das zur Trennung von Logik, Daten und Benutzeroberfläche einer Anwendung verwendet wird. Es bietet eine Struktur, die die Anwendung in drei verschiedene Komponenten unterteilt, um eine bessere Verwaltung und Wartung des Codes zu ermöglichen. In diesem Artikel untersuchen wir, wie Sie mit dem PHP8-Framework eine Anwendung entwickeln, die dem MVC-Muster entspricht. Schritt eins: Verstehen Sie das MVC-Muster Bevor Sie mit der Entwicklung einer MVC-Anwendung beginnen, I

Vom Routing bis zu Ansichten – eine ausführliche Erkundung der MVC-Architektur von Beego Vom Routing bis zu Ansichten – eine ausführliche Erkundung der MVC-Architektur von Beego Jun 23, 2023 am 10:53 AM

Beego ist ein auf der Go-Sprache basierendes Webanwendungs-Framework, das die Vorteile hoher Leistung, Einfachheit und Benutzerfreundlichkeit sowie hoher Skalierbarkeit bietet. Unter anderem ist die MVC-Architektur eines der zentralen Designkonzepte des Beego-Frameworks. Sie kann Entwicklern dabei helfen, Code besser zu verwalten und zu organisieren sowie die Entwicklungseffizienz und Codequalität zu verbessern. Dieser Artikel befasst sich mit der MVC-Architektur von Beego, damit Entwickler das Beego-Framework besser verstehen und verwenden können. 1. Einführung in die MVC-Architektur MVC oder Model-View-Controller ist weit verbreitet

See all articles