Heim > php教程 > PHP开发 > Yii Framework Analysis (8) – URL-Verwaltungskomponente

Yii Framework Analysis (8) – URL-Verwaltungskomponente

黄舟
Freigeben: 2016-12-27 11:25:30
Original
1300 Leute haben es durchsucht

Die URL-Verwaltungskomponente bietet hauptsächlich zwei Funktionen:
1. Analysieren Sie anhand der vom Benutzer eingegebenen URL die Route für die Verarbeitung dieser Anfrage – welche Aktion von welchem ​​Controller sie verarbeitet, und fügen Sie gleichzeitig die hinzu Parameterteil in der URL bis zum Parameter $_GET. In jedem Web-Framework wird eine solche Komponente benötigt, um Routenverteilungsarbeiten durchzuführen.
2. Erstellen Sie eine URL basierend auf der Route und dem Parameter-Array. Die URL kann in der Ansichtsschicht fest codiert werden, d. h. die URL-Adresse wird direkt geschrieben, was jedoch häufig an Flexibilität mangelt und Kosten für die spätere Wartung mit sich bringt.

array(
    'components'=>array(
        'urlFormat'=>'path',
        'rules'=>array(
            &#39;/art/<cate:\w+>/<key:\d+>/<id:\d+>/<p:\d+>&#39;=>&#39;article/<cate>/<key>&#39;,
            &#39;post/<id:\d+>/<title:.*?>&#39;=>&#39;post/view&#39;,
            &#39;<controller:\w+>/&#39;=>&#39;<controller>/&#39;,
         ),
    ),
);</action></controller></action:\w+></controller:\w+></title:.*?></id:\d+></key></cate></p:\d+></id:\d+></key:\d+></cate:\w+>
Nach dem Login kopieren

Das Obige ist die Konfiguration einer URL-Verwaltungskomponente mit insgesamt 3 Regeln. In der folgenden Abbildung wird die erste Regel als Beispiel verwendet, um die beiden Funktionen URL-Parsing und URL-Erstellung zu veranschaulichen. Für jede Routing-Regel erstellt CUrlManager ein CUrlRule-Objekt, um die beiden dieser Regel entsprechenden Funktionen zu verarbeiten. Wenn also mehrere Regeln vorhanden sind, gibt es mehrere CUrlRule-Objekte. CUrlRule ist also der Kern der URL-Verwaltung. Lassen Sie uns das Funktionsprinzip von CUrlRule analysieren.

Yii Framework Analysis (8) – URL-Verwaltungskomponente

Jede URL-Routing-Regel wird von einem CUrlRule-Objekt verarbeitet. Nehmen Sie als Nächstes die folgende Routing-Regel als Beispiel: '/art////'=>'article //', beschreibt den Verarbeitungsprozess der URL-Analyse und URL-Erstellung. Der Prozess der Verarbeitung von URLs durch jedes CUrlRule-Objekt kann in drei Phasen unterteilt werden:
1. Initialisieren des CUrlRule-Objekts
Im Konstruktor des CUrlRule-Objekts werden 6 wichtige Mitgliedsvariablen initialisiert:

Yii Framework Analysis (8) – URL-Verwaltungskomponente

Parsen der URL
Die Arbeit des Parsens der URL ist in drei Schritte unterteilt: a. Ersetzen Sie die Referenzfelder in der Route entsprechend den Referenzen. ;c. Fügen Sie die in params angegebenen Felder zum Array $_GET hinzu.
Die Arbeit zum Erstellen einer URL ist in drei Schritte unterteilt: a. Analysieren Sie jedes Feld in der Eingaberoute. b Ersetzen Sie das Eingabeparameter-Array und das im vorherigen Schritt analysierte Array.

Yii Framework Analysis (8) – URL-Verwaltungskomponente

Das Obige ist der Inhalt der Yii-Framework-Analyse (8) – URL-Verwaltungskomponente. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php). cn)!



Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage