国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim Backend-Entwicklung PHP-Tutorial PHP implementiert Routing und automatisches Laden von Klassen

PHP implementiert Routing und automatisches Laden von Klassen

Mar 24, 2018 pm 05:54 PM
php laden automatisch

Dieses Mal zeige ich Ihnen das PHP-Routing und das automatische Laden von Klassen. Was sind die Vorsichtsma?nahmen für die Implementierung des Routings und des automatischen Ladens von Klassen? einmal einen Blick.

Das Projektverzeichnis lautet wie folgt

Eintragsdateiindex.php

<?php
define(&#39;WEBROOT&#39;, &#39;C:/Users/Administrator/Documents/NetBeansProjects/test&#39;);
require_once(WEBROOT.&#39;/core/environment.php&#39;);
coreapp::run(); //

Klasse automatisches Laden der Datei Environment.php

<?php
//根據(jù)類名來include文件
class loader {
  //找到對應(yīng)文件就include
  static function load($name) {
    $file = self::filepath($name);
    if ($file) {
      return include $file;
    }
  }
  static function filepath($name, $ext = &#39;.php&#39;) {
    if (!$ext) {
      $ext = &#39;.php&#39;;
    }
    $file = str_replace(&#39;&#39;, &#39;/&#39;, $name) . $ext; //類名轉(zhuǎn)路徑
    $path .= WEBROOT . &#39;/&#39; . $file;
    if (file_exists($path)) {
      return $path; //找到就返回
    }
    return null;
  }
}
spl_autoload_register(&#39;loader::load&#39;);

Die Laderegeln für meine Klassen entsprechen beispielsweise der coreapp::run() -Methode im Stammverzeichnis/core/app.php. Die Funktion run() wird verwendet, um das automatische Laden zu implementieren Wenn ein bestimmter Klassenname aufgerufen wird, wird er automatisch ausgeführt. spl_autoload_register() Fügen Sie die entsprechende Klassendatei entsprechend dem Klassennamen ein. spl_autoload_register(&#39;loader::load&#39;)

Die Ausführungsmethode der app.php-Eintragsdatei startet die Ausführung des Framework-Prozesses

<?php
class coreapp {
  static function run() {
    $a = $_SERVER[&#39;REQUEST_URI&#39;];
    $uri = rtrim(preg_replace(&#39;/\?.*/&#39;, &#39;&#39;, $_SERVER[&#39;REQUEST_URI&#39;]), &#39;/&#39;);
    $params = explode(&#39;/&#39;, trim($uri, &#39;/&#39;));
    $count = count($params);
    if ($count >?1)?{
??????$controller?=?$params[0];
??????$method?=?$params[1];
????}?elseif?($count?==?1)?{
??????$controller?=?'index';
??????$method?=?$params[0];
????}?else?{
????}
????$filename?=?WEBROOT?.?'/controller/'?.?$controller?.?'.php';
????$controller?=?'controller'.$controller;
????try?{
??????if?(!file_exists($filename))?{
????????throw?new?Exception('controller?'?.?$controller?.?'?is?not?exists!');
????????return;
??????}
??????include($filename);
??????if?(!class_exists($controller))?{
????????throw?new?Exception('class?'?.?$controller?.?'?is?not?exists');
????????return;
??????}
??????$obj?=?new?ReflectionClass($controller);
??????if?(!$obj->hasMethod($method))?{
????????throw?new?Exception('method?'?.?$method?.?'?is?not?exists');
????????return;
??????}
????}?catch?(Exception?$e)?{
??????echo?$e;?//展示錯誤結(jié)果
??????return;
????}
????$newObj?=?new?$controller();
????call_user_func_array(array($newObj,?$method),?$params);
??}
}
Suchen Sie den entsprechenden Controller gem?? der Anforderungs-URI und rufen Sie ihn mit der Methode

auf Methode im Controllercall_user_func_array()

Stammverzeichnis/controller/test.php

<?php
class?controllertest?{
??public?function?write($controller,?$method)?{
????//configtest::load('test');
????modeltest::write($controller,?$method);
??}
}
Tats?chlich muss der Aufruf hier nicht unbedingt die Testmethode im Modell aufrufen. Sie k?nnen eine beliebige aufrufen Datei im Modellverzeichnis. Sie k?nnen einige Konfigurationsdateien und andere Vorg?nge lesen.

Stammverzeichnis/model/test.php

<?php
class?modeltest?{
??public?function?write($model,?$method)?{
????echo?'From?controller:'.$model.'?to?model:?'?.?$model?.?'?,method:?'?.?$method;
??}
}
Zum Beispiel kommt die Anfrage hostname/test/write aus der Eintragsdatei. Nach

finden Sie die Führen Sie die entsprechende coreapp::run-Methode write()

unter der Controller-Klasse aus. Weitere spannende Informationen finden Sie in den anderen verwandten Artikeln PHP chinesische Website!

Empfohlene Lektüre:

Detaillierte Erkl?rung des von PHP beibehaltenen Schlüsselwerts + zusammengeführten Arrays

Installation der Apache- und PHP-Umgebung in Alibaba Cloud

Wie thinkphp URLs gem?? Routing-Regeln generiert

Das obige ist der detaillierte Inhalt vonPHP implementiert Routing und automatisches Laden von Klassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

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.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

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)

Verwenden Sie STD :: Chrono in C. Verwenden Sie STD :: Chrono in C. Jul 15, 2025 am 01:30 AM

STD :: CHRONO wird in C verwendet, um die Zeit zu verarbeiten, einschlie?lich des Erhaltens der aktuellen Zeit, der Messung der Ausführungszeit, der Betriebszeit und -dauer und der Formatierungsanalysezeit. 1. Verwenden Sie std :: chrono :: system_clock :: Now (), um die aktuelle Zeit zu erhalten, die in eine lesbare Zeichenfolge konvertiert werden kann, aber die Systemuhr ist jedoch m?glicherweise nicht eint?nig. 2. Verwenden Sie STD :: Chrono :: Steady_clock, um die Ausführungszeit zu messen, um die Monotonie zu gew?hrleisten, und umwandeln Sie sie durch Duration_cast in Millisekunden, Sekunden und andere Einheiten; 3. Zeitpunkt (Time_Point) und Dauer (Dauer) k?nnen interoperabel sein, aber die Aufmerksamkeit der Einheitenkompatibilit?t und der Uhr -Epoche (Epoche) sollte beachtet werden.

Warum wir kommentieren: Ein PHP -Leitfaden Warum wir kommentieren: Ein PHP -Leitfaden Jul 15, 2025 am 02:48 AM

PhphastheeCompentStyles:/

So installieren Sie PHP unter Windows So installieren Sie PHP unter Windows Jul 15, 2025 am 02:46 AM

Die wichtigsten Schritte zur Installation von PHP unter Windows sind: 1. Laden Sie die entsprechende PHP -Version herunter und dekomprimieren Sie sie. Es wird empfohlen, die ThreadSafe -Version mit Apache oder NonThreadsafe -Version mit Nginx zu verwenden. 2. Konfigurieren Sie die Php.ini-Datei und benennen Sie php.ini-Entwicklung oder php.ini-Produktion in Php.ini um; 3. Fügen Sie den PHP -Pfad zum Variablenpfad der Systemumgebung hinzu, um die Befehlszeilenkonsum zu erhalten. V. 5. Wenn Sie Apache verwenden, müssen Sie P in httpd.conf konfigurieren

PHP -Syntax: Die Grundlagen PHP -Syntax: Die Grundlagen Jul 15, 2025 am 02:46 AM

Die grundlegende Syntax von PHP enth?lt vier Schlüsselpunkte: 1. Das PHP -Tag muss beendet werden, und die Verwendung vollst?ndiger Tags wird empfohlen. 2. Echo und Druck werden üblicherweise für den Ausgangsinhalt verwendet, unter denen das Echo mehrere Parameter unterstützt und effizienter ist. 3. Die Annotationsmethoden umfassen //, # und //, um die Code -Lesbarkeit zu verbessern; 4. Jede Aussage muss mit einem Semikolon enden, und R?ume und Linienbrüche beeinflussen die Ausführung nicht, sondern die Lesbarkeit. Das Beherrschen dieser Grundregeln kann dazu beitragen, klare und stabile PHP -Code zu schreiben.

Python, wenn sonst Beispiel Python, wenn sonst Beispiel Jul 15, 2025 am 02:55 AM

Der Schlüssel zum Schreiben von Pythons IFelse -Anweisungen liegt darin, die logische Struktur und Details zu verstehen. 1. Die Infrastruktur besteht darin, einen Code auszuführen, wenn die Bedingungen festgelegt werden. Andernfalls ist der Anliesiger ausgeführt, sonst ist optional. 2. Multi-Konditionsurteil wird mit ELIF umgesetzt und nacheinander ausgeführt und gestoppt, sobald es erfüllt ist. 3.. Verschachtelt, wenn es für ein weiteres Unterteilungsurteil verwendet wird, wird empfohlen, zwei Schichten nicht zu überschreiten. 4. Ein tern?rer Ausdruck kann verwendet werden, um einfache IFelse in einem einfachen Szenario zu ersetzen. Nur wenn wir auf Einklebung, bedingte Reihenfolge und logische Integrit?t achten k?nnen, k?nnen wir klare und stabile Beurteilungscodes schreiben.

Php 8 Installationshandbuch Php 8 Installationshandbuch Jul 16, 2025 am 03:41 AM

Die Schritte zur Installation von PHP8 auf Ubuntu sind: 1. Aktualisieren der Softwarepaketliste; 2. Installieren Sie PHP8- und Basiskomponenten; 3. überprüfen Sie die Version, um zu best?tigen, dass die Installation erfolgreich ist. 4. Installieren Sie nach Bedarf zus?tzliche Module. Windows -Benutzer k?nnen das ZIP -Paket herunterladen und dekomprimieren, dann die Konfigurationsdatei ?ndern, Erweiterungen aktivieren und den Pfad zu Umgebungsvariablen hinzufügen. MACOS -Benutzer empfehlen, Homebrew zu verwenden, um Schritte zu installieren und auszuführen, z. B. das Hinzufügen von TAP, das Installieren von PHP8, das Einstellen der Standardversion und die überprüfung der Version. Obwohl die Installationsmethoden unter verschiedenen Systemen unterschiedlich sind, ist der Prozess klar, sodass Sie die richtige Methode entsprechend dem Zweck ausw?hlen k?nnen.

Wofür ist PHP und wofür wird es verwendet? Wofür ist PHP und wofür wird es verwendet? Jul 16, 2025 am 03:45 AM

PhpisaServer-sidescriptingglanguageusedForWebDevelopment, speziellfordynamicwebsitesandcmsplatforms-Likewordpress.itrunsonTheServer, processesData, InteractswithDatabases und SendshtmltoBrowser.CommonuSesincludesersautens, E-CommercePlatorms, für

Ihr erstes PHP -Skript: Eine praktische Einführung Ihr erstes PHP -Skript: Eine praktische Einführung Jul 16, 2025 am 03:42 AM

Wie fange ich an, dein erstes PHP -Skript zu schreiben? Richten Sie zun?chst die lokale Entwicklungsumgebung ein, installieren Sie XAMPP/MAMP/LAMP und verwenden Sie einen Texteditor, um das laufende Prinzip des Servers zu verstehen. Erstellen Sie zweitens eine Datei namens Hello.php, geben Sie den Basiscode ein und führen Sie den Test aus. Drittens lernen Sie, PHP und HTML zu verwenden, um die dynamische Inhaltsausgabe zu erreichen. Achten Sie schlie?lich auf h?ufige Fehler wie fehlende Semikolons, Zitierprobleme und Dateierweiterungsfehler und erm?glichen Sie die Fehlerberichterstattung für das Debuggen.

See all articles