Heim >Entwicklungswerkzeuge >composer >Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

藏色散人
藏色散人nach vorne
2020-07-10 14:10:063944Durchsuche

Die folgende Tutorial-Kolumne von Composer zeigt Ihnen, wie Sie Composer zum Implementieren des Routenladens verwenden. Ich hoffe, dass es für Freunde in Not hilfreich ist!

Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

Den Beispielcode für dieses Tutorial finden Sie unter https:// /github.com/johnlui/My-First-Framework-based-on-Composer

Das prestigeträchtige CodeIgniter-Framework ist für viele Menschen das Einstiegsframework für die PHP-Entwicklung Ich begann zu lernen, wie man eine Website von Grund auf erstellt. Ich habe viel in CI gelernt, wobei das tiefgreifende Verständnis von MVC und das Verständnis der Natur des Frameworks den größten Einfluss auf mich hatten. Aus der Perspektive der Verwendung von Frameworks zur Verbesserung der Entwicklungseffizienz ist das Routing das Wesentliche von Frameworks.

Empfehlen Sie https://github.com/NoahBuscher/Macaw, das entsprechende Composer-Paket ist noahbuscher/macaw.

Beginnen wir mit der Installation, ändern Sie „composer.json“:

 "require": {
    "noahbuscher/macaw": "dev-master"
  },

Führen Sie die Composer-Installation aus. Nach Erfolg erhalten Sie das folgende Verzeichnis

Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

Zu diesem Zeitpunkt ist das Macaw-Paket erfolgreich installiert!

Das Folgende ist der Moment, Zeuge des Wunders zu werden! Wir geben MFFC Leben und bringen es richtig zum Laufen!

1: Erstellen Sie einen neuen App/config-Ordner und erstellen Sie darin eine neue Datei routs.php mit folgendem Inhalt:
Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

2: Laden Sie die Routen in den Eintrag Datei index.php.php-Datei
Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

Die Dokumentation von Macaw befindet sich unter https://github.com/NoahBuscher/Macaw. Bitte richten Sie pseudostatisch entsprechend Ihrem HTTP-Dienstsoftwaretyp ein. Tatsächlich ist es dasselbe wie bei den meisten Frameworks: „Verweisen Sie alle nicht statischen Dateien auf index.php“.

Greifen Sie nach erfolgreicher Konfiguration auf den Domainnamen zu:
Bringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden

Wenn die Seite verstümmelt ist, passen Sie bitte die Kodierung auf UTF-8 an. Wenn Sie die obige Seite erfolgreich sehen, herzlichen Glückwunsch, die Routing-Konfiguration ist erfolgreich!

Macaw hat nur eine Datei und die Gesamtzahl der entfernten Leerzeilen beträgt etwas mehr als hundert Zeilen. Wir können anhand des Codes direkt verstehen, wie es funktioniert. Lassen Sie mich es unten kurz analysieren:

  1. Das automatische Laden von Composer behält ein Array im Speicher vom vollständigen Namespace-Klassennamen bis zum Dateinamen bei, nachdem jede URL MFFC/public/index.php ansteuert, also wenn wir Wenn Sie eine Klasse im Code verwenden, wird die Datei, in der sich die Klasse befindet, automatisch geladen.
  2. Wir haben die Macaw-Klasse in die Routing-Datei geladen: „use NoahBuscherMacawMacaw;“ und haben dann die statische Methode::get() zweimal aufgerufen. Diese Methode existiert nicht und wird von MFFC/ verwendet. Der Anbieter __callstatic() in /codingbean/macaw/Macaw.php übernimmt.

  3. Diese Funktion akzeptiert zwei Parameter, method" role="presentation" style="position: relative;">method und params ist der spezifische Funktionsname, hier ist er get, und letzterer ist der in diesem Aufruf übergebene Parameter, also Macaw::get('. verdammt‘, zwei Parameter in function(){…}). Der erste Parameter ist der URL-Wert, den wir überwachen möchten, und der zweite Parameter ist ein PHP-Abschluss, der als Rückruf dient und darstellt, was wir tun möchten, nachdem die URL erfolgreich abgeglichen wurde.

  4. __callstatic() 做的事情也很简单,分别将目标URL(即 /fuck)、HTTP方法(即 GET)和回调代码压入 routes" role="presentation" style="position: relative;">routesmethods 和 $callbacks 三个 Macaw 类的静态成员变量(数组)中。

  5. 路由文件最后一行的 Macaw::dispatch(); 方法才是真正处理当前 URL 的地方。能直接匹配到的会直接调用回调,不能直接匹配到的将利用正则进行匹配。

Das obige ist der detaillierte Inhalt vonBringen Sie Ihnen bei, Composer zum Implementieren des Routenladens zu verwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen