Das MVC-Muster wurde 1970 von Trygve Reenskaug am Xerox Research Center vorgeschlagen. Der früheste Referenzroutinencode wurde in smalltalk80 geschrieben. Es wurde ursprünglich verwendet, um das Interaktionsproblem der grafischen Benutzeroberfläche in Anwendungssoftware zu lösen.
Wenn Sie das MVC-Muster verwendet haben, wissen Sie, wie nützlich es ist, insbesondere für Anwendungen mit grafischer Benutzeroberfläche. Darüber hinaus ist MVC auch für Webanwendungen sehr nützlich. Obwohl Webdienste miteinander kommunizieren und der Kommunikationsprozess manchmal unterbrochen wird, bringt dies auch einige einzigartige Herausforderungen und Chancen mit sich.
Wenn Sie zu diesem Kapitel kommen und nach einem echten MVC-Ansatz für Webanwendungen suchen, hoffe ich, dass Sie von den Antworten hier nicht zu enttäuscht sein werden. Die perfekte Lösung gibt es nicht, aber es gibt viele Beispiele und verwandte Muster, die Ihnen bei der effektiven Implementierung von MVC helfen. Hoffentlich können die Ideen hier als Sprungbrett für Ihre Codierungsbemühungen dienen und Sie zu weiteren Recherchen anregen.
ModulansichtController
Im Gegensatz zu anderen Entwurfsmustern ist das MVC-Muster keine Klasse, die sich auf die Beschreibung einer Klasse konzentriert, die direkt entworfen werden kann und codierte Strukturmuster. Vielmehr ist es mehr als nur ein konzeptioneller Leitfaden oder ein Beispiel.
Konzeptionell ist das MVC-Muster als Brücke zwischen Modell, Ansicht und Controller definiert. Sowohl der Controller als auch die Ansicht hängen vom Modell ab, da sowohl die Ansicht als auch der Controller Datenanforderungen an das Modell senden müssen. Die Daten werden über den Controller in Ihr System eingegeben und die Ergebnisse werden schließlich über die Ansicht angezeigt. Genauer gesagt: Für Sie als PHP-Entwickler verarbeitet der Controller jede externe http-Anfrage und die Ansicht generiert die http-Antwort.
Der vollständige Name von MVC lautet Model View Controller. Dies ist die Abkürzung für model-view(view)-controller(controller), ein Software-Designmodell, das organisiert Code auf eine Weise, die Geschäftslogik, Daten und Schnittstellenanzeige trennt und Geschäftslogik in einer Komponente zusammenfasst. Während die Benutzeroberfläche und die Benutzerinteraktion verbessert und personalisiert werden, besteht keine Notwendigkeit, die Geschäftslogik neu zu schreiben.
Bevor wir ein Framework lernen, müssen wir im Grunde wissen, was MVC ist, nämlich Modellansichtssteuerung. Genauer gesagt ist es die Trennung von Datensteuerung und Seitenimplementierung MVC ist in drei Ebenen unterteilt, und jede der drei Ebenen führt ihre eigenen Aufgaben aus, ohne sich gegenseitig zu stören. Lassen Sie uns zunächst kurz die Ansicht vorstellen, bei der es sich um die Webseite handelt Damit der Controller dem System Anweisungen erteilen kann, dient das Modell dazu, Daten zur Verarbeitung aus der Datenbank abzurufen.
Mvc-Workflow: Der erste Schritt ist der Viewer – >Rufen Sie den Controller an und erteilen Sie eine Anweisung
Der zweite Schritt ist der Controller – >Wählen Sie ein geeignetes Modell gemäß der Anweisung aus
Schritt 3 Modell-& GT; Wählen Sie die entsprechenden Daten ausSchritt 4 Controller-& gt; Wählen Sie die entsprechende Ansicht aus
Schritt 5 Ansicht- >Anzeigen der im Dritter Schritt nach Wunsch des BenutzersEine einfache Beispielentwicklung ist wie folgt: Entwickeln Sie zunächst den ersten Controller. Unsere Namenskonvention lautet hier wie folgt: testController.class.php
<?php class testController{ function show(){ } } ?>
<?php class testModel{ function get(){ return "hello world"; } } ?>
<?php class testVies{ function display($data){ echo $data; } } ?>
<?php require_once('testController.class.php'); require_once('testModel.class.php'); require_once('testView.class.php'); $testController = new testController();//调用控制器 $testController->show(); ?>
<?php class testController{ function show(){ $testModel = new testModel();//选取合适的模型 $data = $testModel->get();//获取相应的数据 $testView = new testView();//选择相应的视图 $testView->display($data);//展示给用户 } } ?>
Das obige ist der detaillierte Inhalt vonVerstehen Sie MVC in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!