Der php.MVC Tag Action Dispatcher
TagActionDispatcher ist eine Implementierung der Standard-ActionDispatcher-Klasse, die den Zugriff auf grundlegende Vorlagen-Tags unterstützt. Die TagActionDispatcher-Klasse unterstützt dieselben ActionObjects-Sammlung und ViewResourcesConfig-Eigenschaften wie der Standard-ActionDispatcher.TagActionDispatcher Klasse Kann auf Systemen mit oder ohne Template-Tags verwendet werden, obwohl es aufgrund der zusätzlichen Verarbeitung zu einem kleinen Leistungsabfall kommt.
Die Template-Tag-Bibliothek ist ein Subsystem des PHP.MVC-Frameworks TagActionDispatcher Arbeit zur Unterstützung einiger einfacher Template-Tags. Das folgende Diagramm zeigt einen Überblick über das PHP.MVC-Template-Tag-System. Die linke Seite zeigt den Programmablauf von TagActionDispatcher. und wie die Tag-Vorlage ist. Lassen Sie diese Klassen interagieren.
Wenn der Controller die Steuerung an den TagActionDispatcher übergibt, wird eine Initialisierung ausgelöst, um die ActionObjects und festzulegen ViewResourcesConfig-Eigenschaften, um unsere Vorlage zu verwenden:
Rufen Sie die Objekte $form, $errors und $data erneut aus der Anfrage ab. Wenn eines dieser Objekte zuvor erstellt wurde (z. B. in der Action-Klasse), werden die Objekte erneut erstellt Jetzt in der Ressourcenvorlage unsichtbar sein, andernfalls wird das Objekt auf NULL gesetzt.
Rufen Sie den Verweis auf das ViewResourcesConfig-Objekt ab, das die Konfigurationsparameter enthält.
Legen Sie den Pfad fest, der auf die Vorlagenquelldatei und die kompilierte Vorlagendatei verweist im ViewResourcesConfig-Parameter.
2. Legen Sie die Bezeichnung Seite
fest. Die Erweiterung der Vorlagenquelldatei (möglicherweise „.ssp“) wird zum Vergleich mit dem ViewResourcesConfig->tagFlagStr-Parameter verwendet, um zu bestimmen, ob diese Seite benötigt wird verarbeitet werden, andernfalls wird die Seite als Standard-Vorlagendatei (ohne Tag) verarbeitet. Wir können die Tag-Dateierweiterung im view-resources-Element wie folgt konfigurieren:
tagFlagStr = ".ssp"
tagFlagCnt = "- 4"
...
tagFlagStr gibt an, dass die Tag-Vorlagen-Quelldatei vorverarbeitet werden kann, z als: myPage.ssp. Das Attribut tagFlagCnt ist die Anzahl der Zeichen am Ende des Dateinamens, einschließlich „.“ (xxxYyy.ssp). Der Name der Quelldatei ist .ssp und -4. Wenn wir also einen Vorlagendateinamen wie myPage.ssp verwenden, müssen wir diese Parameter nicht festlegen.
3. Prozess-Tag-Dateien
Das Vorlagen-Tag-System entscheidet anhand des ViewResourcesConfig->PRocessTags-Attributs, ob der Tag-Prozessor ausgeführt wird. Wenn dieses Attribut wahr ist, wird die Vorlagenseite (und die darin enthaltenen Seiten) von der Tag-Prozessor-Klasse verarbeitet, andernfalls vom Tag-Prozessor wird nicht aufgerufen. Entwickler müssen es nur während der Entwicklung auf true setzen, sonst wird es nicht verarbeitet. Beachten Sie jedoch, dass geänderte Tags nur kompiliert werden, wenn das Attribut „processTags“ auf „true“ gesetzt ist. Wir können das Attribut „processTags“ für das Element „view-resources“ wie folgt definieren:
processTags = "True"
...
view-resources>
Beachten Sie, dass der Standardwert false ist.
4. Kompilieren Sie die Vorlagenseite.
Wenn TagActionDispatcher entscheidet, dass die Vorlagenseite verarbeitet wird, übergibt er die Steuerung an das Vorlagen-Tag-System. Jetzt entscheidet das Vorlagen-Tag-System, ob nur geänderte Seiten oder alle Seiten kompiliert werden sollen. Dieses Verhalten verwendet ViewResourcesConfig->compileAll-Attribute zum Definieren. Wir definieren das Attribut „compileAll“ wie folgt:
CompilerAll = "True"
...
> Wenn das Attribut „compileAll“ auf „false“ (Standardwert) gesetzt ist, werden nur geänderte Seiten kompiliert. Wenn die Seite beispielsweise seit der letzten Anforderung geändert wurde, wird diese Seite kompiliert.
6. Kompilieren Sie alle Seiten.
Wenn das Attribut „compileAll“ auf „true“ gesetzt ist, kompiliert das Vorlagen-Tag-System immer Seiten (einschließlich Seite), unabhängig davon, ob diese Seite seit der letzten Anfrage geändert wurde. Entwickler können diese Option während der Entwicklung verwenden um sicherzustellen, dass alle Seiten verarbeitet werden
Nach der Verarbeitung der Vorlagenseite wird die angeforderte VIEW-Ressource (Vorlagendatei) von jeder anderen regulären PHP.MVC verarbeitet Vorlagendatei. TagActionDispatcher ruft die kompilierte Seite (einschließlich der enthaltenden Seite) ab und gibt die Seite an den Benutzerbrowser aus. Wenn das Vorlagen-Tag-System nicht aufgerufen wird, verarbeitet TagActionDispatcher die angeforderte Seite als reguläre VIEW-Ressource Wird verwendet, um den Standard-ActionDispatcher zu ersetzen.
Das Obige ist der Inhalt. Weitere Informationen finden Sie auf der chinesischen PHP-Website (www.php.cn).