So implementieren Sie einfaches Routing in PHP
Wie implementiert man einfaches Routing in PHP? In diesem Artikel wird hauptsächlich eine einfache PHP-Routing-Klasse im Detail vorgestellt. Ich hoffe, es hilft allen.
Das Beispiel in diesem Artikel teilt Ihnen eine einfache, in PHP geschriebene Routing-Klasse als Referenz mit. Der spezifische Inhalt lautet wie folgt
<?php namespace cmhc\Hcrail; class Hcrail { /** * callback function * @var callable */ protected static $callback; /** * match string or match regexp * @var string */ protected static $match; protected static $routeFound = false; /** * deal with get,post,head,put,delete,options,head * @param $method * @param $arguments * @return */ public static function __callstatic($method, $arguments) { self::$match = str_replace("//", "/", dirname($_SERVER['PHP_SELF']) . '/' . $arguments[0]); self::$callback = $arguments[1]; self::dispatch(); return; } /** * processing ordinary route matches * @param string $requestUri * @return */ public static function normalMatch($requestUri) { if (self::$match == $requestUri) { self::$routeFound = true; call_user_func(self::$callback); } return; } /** * processing regular route matches * @param string $requestUri * @return */ public static function regexpMatch($requestUri) { //处理正则表达式 $regexp = self::$match; preg_match("#$regexp#", $requestUri, $matches); if (!empty($matches)) { self::$routeFound = true; call_user_func(self::$callback, $matches); } return; } /** * dispatch route * @return */ public static function dispatch() { if (self::$routeFound) { return ; } $requestUri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH); $requestMethod = $_SERVER['REQUEST_METHOD']; if (strpos(self::$match, '(') === false) { self::normalMatch($requestUri); } else { self::regexpMatch($requestUri); } } /** * Determining whether the route is found * @return boolean */ public static function isNotFound() { return !self::$routeFound; } }
Verwandte Empfehlungen:
Detaillierte Erläuterung des Yii-Betriebsmechanismus und des Routings
Wie man das MVC-Framework in PHP lernt
Das obige ist der detaillierte Inhalt vonSo implementieren Sie einfaches Routing in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

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

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

RestartyourRouterandComputertoresolvetemporaryglitches.2.RunthenetworkrouBleshooterviathesystemTraytoAutomaticFixCommonissues.3.RewhewIpadDressusesusesusesusesuSuseingCommandpromptasadMinistratorByRunningipconfig/Release, Ipconfig/Reufreset und Netshwinset und Netschon/Rufe, Netshwinset und Netshwinset und NETSHNE und NETSETH und NETSETH und NETHN

PhparrayShandledatacollectionSeffictionlyusingInedorassociativestruationen;

UseInterfacestodeFineContractsfornrelatedCläses und sicherstellen, dass es sich um die Kenntnisse handelt

TheobserverdesignPatternNenableAtomaticnotificationOfDependentObjectSwhenasubjectsSstatechanges.1) itdefinesaon-to-ManyDependencyBetobjects; 2) thesubjectmaintainSalistoBoBserverSandnotifiesthemviaAcommonNection;

$ _Cookieisaphpsuperglobalfor AccessingcookieStbytheBrowser; CookiesAresetusingsetcookie () vor dem Output, Readvia $ _cookie ['name'], aktualisiert Byresending mit den Sekton, mit SCURITYBESTPRACTICING, MIT SECURITYBESTPRACTICICING, MIT SECURITYBESTPRECTICE

Um PhpMyAdmin effektiv zu schützen, müssen mehrere Sicherheitsmaßnahmen ergriffen werden. 1. Beschränken Sie den Zugriff über IP, nur vertrauenswürdige IP -Verbindungen sind zulässig. 2. Ändern Sie den Standard -URL -Pfad zu einem Namen, der nicht leicht erraten ist. 3. Verwenden Sie starke Passwörter und erstellen Sie einen dedizierten MySQL-Benutzer mit minimierten Berechtigungen. Es wird empfohlen, die Zwei-Faktor-Authentifizierung zu aktivieren. V. 5. Stärken Sie den Webserver und die PHP -Konfiguration, deaktivieren Sie gefährliche Funktionen und begrenzen Sie die Dateiausführung. 6. HTTPS zum Verschlüsseln der Kommunikation erzwingen, um Anmeldeinformationen zu verhindern; 7. Deaktivieren Sie PhpMyAdmin, wenn Sie nicht verwendet werden, oder erhöhen Sie die HTTP -Grundauthentifizierung; 8. Überwachen Sie regelmäßig Protokolle und konfigurieren Sie Fail2ban, um sich gegen Brute Force Cracking zu verteidigen. 9. Setup löschen und

XSLT -Parameter sind ein Schlüsselmechanismus für die dynamische Konvertierung durch externe Übergabewerte. 1. Verwenden Sie deklarierte Parameter und setzen Sie Standardwerte. 2. Übergreifende Wert des tatsächlichen Wertes aus dem Anwendungscode (z. B. C#) über Schnittstellen wie XSltargumentList; 3.. Steuerungsbedingte Verarbeitung, Lokalisierung, Datenfilterung oder Ausgabeformat durch $ ParamName -Referenzparameter in der Vorlage; 4. Best Practices umfassen die Verwendung sinnvoller Namen, die Bereitstellung von Standardwerten, die Gruppierung zugehörigen Parametern und das Überprüfen der Werte. Die rationale Verwendung von Parametern kann XSLT -Style -Blätter hoch wiederverwendbar und wartbar machen, und die gleichen Stilblätter können diversifizierte Ausgabeergebnisse basierend auf unterschiedlichen Eingaben erzielen.

ApiversioningInphpcanbeeffectivImplementeduseurl, Header, Orqueryparameter-Anpassungen, WithurlandheaderversioningBeingmostrecommended.1.Forurl-Basisversionierung, einschließlich derDeversionIntheroute (z
