CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析,ciuristring_PHP教程
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析,ciuristring
本文实例讲述了CI框架URI.php中_fetch_uri_string()函数用法。分享给大家供大家参考,具体如下:
APPPATH/config/config.php中对于url 格式的拟定。
$config['uri_protocol'] = 'AUTO';
这个配置项目定义了你使用哪个服务器全局变量来拟定URL。
默认的设置是auto,会把下列四个方式轮询一遍。当你的链接不能工作的时候,试着用用auto外的选项。
'AUTO' Default - auto detects
'PATH_INFO' Uses the PATH_INFO
'QUERY_STRING' Uses the QUERY_STRING
'REQUEST_URI' Uses the REQUEST_URI
'ORIG_PATH_INFO' Uses the ORIG_PATH_INFO
CI_URI中的几个成员变量
$keyval = array(); //List of cached uri segments $uri_string; //Current uri string $segments //List of uri segments $rsegments = array() //Re-indexed list of uri segments
获取到的current uri string 赋值到 $uri_string ,通过function _set_uri_string($str)。
获取到$str有几个选项,也就是_fetch_uri_string()的业务流程部分了
一、默认
$config['uri_protocol'] = 'AUTO'
时,程序会一次轮询下列方式来获取URI
(1)当程序在CLI下运行时,也就是在命令行下php文件时候。ci会这么获取URI
private function _parse_cli_args() { $args = array_slice($_SERVER['argv'], 1); return $args ? '/' .implode('/',$args) : ''; }
$_SERVER['argv'] 包含了传递给脚本的参数 当脚本运行在CLI时候,会给出c格式的命令行参数
截取到$_SERVER['argv']中除了第一个之外的所有参数
如果你在命令行中这么操作
php d:\wamp\www\CodeIgniter\index.php\start\index
_parse_cli_args() 返回一个 /index.php/start/index的字符串
(2)默认使用REQUEST_URI来探测url时候会调用 私有函数 _detect_uri()
(3)如果上面的两种方式都不能获取到uri那么会采用$_SERVER['PATH_INFO']来获取
$path = (isset($_SERVER['PATH_INFO'])) ? $_SERVER['PATH_INFO'] : @getenv('PATH_INFO'); if (trim($path, '/') != '' && $path != "/".SELF) { $this->_set_uri_string($path); return; }
(4)如果上面三种方式都不能获取到,那么就使用
$_SERVER['QUERY_STRING']或者getenv['QUERY_STRING']
$path = (isset($_SERVER['QUERY_STRING'])) ? $_SERVER['QUERY_STRING'] : @getenv('QUERY_STRING'); if (trim($path, '/') != '') { $this->_set_uri_string($path); return; }
(5)上面四种方法都不能获取到URI,那么就要使用$_GET数组了,没招了
if (is_array($_GET) && count($_GET) == 1 && trim(key($_GET), '/') != '') { $this->_set_uri_string(key($_GET)); return; }
二、在config.php中设定了:
$config['uri_protocol']
那么 程序会自动执行相应的操作来获取uri
更多关于CodeIgniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《php优秀开发框架总结》、《ThinkPHP入门教程》、《ThinkPHP常用方法总结》、《Zend FrameWork框架入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

Heiße KI -Werkzeuge

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

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

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

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)

Heiße Themen



Mit der Entwicklung der Netzwerktechnologie ist PHP zu einem wichtigen Werkzeug für die Webentwicklung geworden. Eines der beliebtesten PHP-Frameworks – CodeIgniter (im Folgenden als CI bezeichnet) hat ebenfalls immer mehr Aufmerksamkeit und Verwendung gefunden. Heute werfen wir einen Blick auf die Verwendung des CI-Frameworks. 1. Installieren Sie das CI-Framework. Zuerst müssen wir das CI-Framework herunterladen und installieren. Laden Sie die neueste Version des komprimierten CI-Framework-Pakets von der offiziellen Website von CI herunter (https://codeigniter.com/). Nachdem der Download abgeschlossen ist, entpacken Sie ihn

Hinweis: Die Root- und Aliasroot-Anweisungen in location legen den Suchstamm nur auf das von root festgelegte Verzeichnis fest, d Die Aias-Anweisung schneidet die passende URL ab und verwendet dann den durch Alias festgelegten Pfad plus die verbleibende URL als Unterpfad, um die URL von Proxy_Pass an der Position zu finden. Wenn die URL von Proxy_Pass keine URL hat und das Ende „/“ ist. ", die passende URL wird abgeschnitten. Wenn das Ende nicht „/" ist, wird die passende URL nicht abgeschnitten, wenn die Proxy_Pass-URL eine URL enthält

PHP ist eine beliebte Programmiersprache, die in der Webentwicklung weit verbreitet ist. Das CI-Framework (CodeIgniter) ist eines der beliebtesten Frameworks in PHP. Es bietet einen vollständigen Satz vorgefertigter Tools und Funktionsbibliotheken sowie einige beliebte Designmuster, mit denen Entwickler Webanwendungen effizienter entwickeln können. In diesem Artikel werden die grundlegenden Schritte und Methoden zur Entwicklung von PHP-Anwendungen mithilfe des CI-Frameworks vorgestellt. Verstehen Sie die grundlegenden Konzepte und Strukturen des CI-Frameworks. Bevor wir das CI-Framework verwenden, müssen wir einige grundlegende Konzepte und Strukturen verstehen. Runter

PHP ist eine weit verbreitete serverseitige Skriptsprache und CodeIgniter4 (CI4) ist ein beliebtes PHP-Framework, das eine schnelle und hervorragende Möglichkeit zum Erstellen von Webanwendungen bietet. In diesem Artikel machen wir Sie mit dem CI4-Framework vertraut, um herausragende Webanwendungen zu entwickeln, indem wir Sie durch die Verwendung führen. 1. Laden Sie CI4 herunter und installieren Sie es. Zuerst müssen Sie es von der offiziellen Website herunterladen (https://codeigniter.com/downloa).

Mit der Entwicklung des Internets und seiner kontinuierlichen Integration in das Leben der Menschen hat die Entwicklung von Netzwerkanwendungen immer mehr an Bedeutung gewonnen. Als bekannte Programmiersprache hat sich PHP zu einer der bevorzugten Sprachen für die Entwicklung von Internetanwendungen entwickelt. Entwickler können zahlreiche PHP-Frameworks verwenden, um den Entwicklungsprozess zu vereinfachen. Eines der beliebtesten ist das CodeIgniter (CI)-Framework. CI ist ein leistungsstarkes PHP-Webanwendungs-Framework, das sich durch geringes Gewicht, Benutzerfreundlichkeit und optimierte Leistung auszeichnet und es Entwicklern ermöglicht, schnell zu erstellen

Die Schritte zum Einführen von CSS-Stilen in das CI-Framework sind wie folgt: 1. CSS-Dateien vorbereiten; 2. CSS-Dateien am entsprechenden Speicherort des CI-Framework-Projekts speichern; 3. CSS auf den Seiten einführen, die CSS-Stile verwenden müssen über die HTML-<link>-Tag-Datei 4. Verwenden Sie den CSS-Klassen- oder ID-Namen im HTML-Element, um den entsprechenden Stil anzuwenden.

1. Einführung Die Standortanweisung ist die Kernkonfiguration des http-Moduls. Sie empfängt Anfragen, die von Benutzern auf der Grundlage vordefinierter URL-Übereinstimmungsregeln gesendet werden. Auf der Grundlage der Übereinstimmungsergebnisse wird die Anfrage direkt an den Backend-Server weitergeleitet 403. 404, 500 Fehlerbehandlung usw. 2. Syntax der Standortanweisung location[=|~|~*|^~|@]/uri/{…} oder location@name{…} 3. URI-Übereinstimmungsmodus Die Standortanweisung ist in zwei Übereinstimmungsmodi unterteilt: 1> Gewöhnlich Zeichen-String-Matching: Regeln beginnend mit = oder ohne führende Zeichen (~) 2> Reguläres Matching: Beginnend mit ~ oder ~* zeigt reguläres Matching an, ~*

Der Unterschied zwischen URL und URI ist: 1. URI ist eine Folge von Zeichenfolgen, die zur Identifizierung von Ressourcen im Internet verwendet werden, während sich URI nicht auf den Standort der Ressource, sondern nur auf deren Kennung konzentriert. 2. URL liefert Informationen über den Standort der Ressource. Detaillierte Informationen über einen Standort im Internet, während URI ein umfassenderes Konzept ist, das nicht nur URLs, sondern auch andere Formen zur Identifizierung von Ressourcen umfasst, wie z. B. URN 3. URL ist ein spezieller URI-Typ, der für verwendet wird Standort Eine Ressource im Internet, während ein URI eine umfassendere Kennung ist, die zur eindeutigen Identifizierung und Benennung einer Ressource verwendet wird.
