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程序设计有所帮助。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











네트워크 기술의 발전으로 PHP는 웹 개발을 위한 중요한 도구 중 하나가 되었습니다. 인기 있는 PHP 프레임워크 중 하나인 CodeIgniter(이하 CI)도 점점 더 많은 관심과 사용을 받고 있습니다. 오늘은 CI 프레임워크를 활용하는 방법에 대해 살펴보겠습니다. 1. CI 프레임워크 설치 먼저 CI 프레임워크를 다운로드하여 설치해야 합니다. CI 공식 홈페이지(https://codeigniter.com/)에서 최신 버전의 CI 프레임워크 압축 패키지를 다운로드하세요. 다운로드가 완료되면 압축을 풀어주세요

참고: location의 루트 및 aliasroot 명령은 검색 루트를 루트가 설정한 디렉터리로 설정합니다. 즉, uri는 잘리지 않습니다. 대신 원본 uri는 파일을 찾기 위해 해당 디렉터리로 이동하는 데 사용됩니다. aias 명령은 일치하는 uri를 잘라낸 다음 별칭으로 설정된 경로와 나머지 uri를 하위 경로로 사용하여 해당 위치에서 Proxy_pass의 uri를 찾습니다. /"이면 일치하는 URI가 잘립니다. 꼬리가 "/"가 아닌 경우 Proxy_pass의 URL에 uri가 포함되어 있으면 일치하는 URI가 잘리지 않습니다.

PHP는 웹 개발에 널리 사용되는 인기 있는 프로그래밍 언어입니다. CI(CodeIgniter) 프레임워크는 PHP에서 가장 널리 사용되는 프레임워크 중 하나입니다. 이는 기성 도구 및 기능 라이브러리의 전체 세트는 물론 일부 인기 있는 디자인 패턴을 제공하여 개발자가 웹 애플리케이션을 보다 효율적으로 개발할 수 있도록 합니다. 이 기사에서는 CI 프레임워크를 사용하여 PHP 애플리케이션을 개발하는 기본 단계와 방법을 소개합니다. CI 프레임워크의 기본 개념과 구조를 이해합니다. CI 프레임워크를 사용하기 전에 몇 가지 기본 개념과 구조를 이해해야 합니다. 아래에

PHP는 널리 사용되는 서버측 스크립팅 언어이며 CodeIgniter4(CI4)는 웹 애플리케이션을 구축하는 빠르고 우수한 방법을 제공하는 인기 있는 PHP 프레임워크입니다. 이 기사에서는 CI4 프레임워크를 사용하여 뛰어난 웹 애플리케이션을 개발하는 방법을 단계별로 안내해 드립니다. 1. CI4 다운로드 및 설치 먼저 공식 웹사이트(https://codeigniter.com/downloa)에서 다운로드해야 합니다.

인터넷이 발전하고 인터넷이 사람들의 삶에 지속적으로 통합됨에 따라 네트워크 애플리케이션의 개발이 점점 더 중요해지고 있습니다. 잘 알려진 프로그래밍 언어인 PHP는 인터넷 애플리케이션 개발에 선호되는 언어 중 하나가 되었습니다. 개발자는 수많은 PHP 프레임워크를 사용하여 개발 프로세스를 단순화할 수 있으며, 가장 널리 사용되는 프레임워크 중 하나는 CodeIgniter(CI) 프레임워크입니다. CI는 강력한 PHP 웹 애플리케이션 프레임워크로, 가볍고 사용하기 쉬우며 성능이 최적화되어 개발자가 빠르게 구축할 수 있다는 특징을 가지고 있습니다.

CI 프레임워크에 CSS 스타일을 도입하는 단계는 다음과 같습니다. 1. CSS 파일을 준비합니다. 2. CSS 파일을 CI 프레임워크 프로젝트의 적절한 위치에 저장합니다. 3. CSS 스타일을 사용해야 하는 페이지에 CSS를 도입합니다. HTML <link> 태그 파일을 통해 4. HTML 요소에 CSS 클래스 또는 ID 이름을 사용하여 해당 스타일을 적용합니다.

1. 소개 위치 지시문은 사전 정의된 URL 일치 규칙에 따라 사용자가 보낸 요청을 수신하고 일치 결과를 기반으로 요청을 백엔드 서버로 전달하여 거부하고 반환합니다. 403. 404, 500 오류 처리 등 2. 위치 명령 구문 location[=|~|~*|^~|@]/uri/{…} 또는 location@name{…} 3. URI 일치 모드 위치 명령은 두 가지 일치 모드로 구분됩니다. 1> 일반 문자 문자열 일치: =로 시작하거나 선행 문자(~) 없이 시작하는 규칙 2> 일반 일치: ~ 또는 ~*로 시작하는 것은 일반 일치를 나타내고, ~*

URL과 URI의 차이점은 다음과 같습니다. 1. URI는 인터넷에서 리소스를 식별하는 데 사용되는 일련의 문자열인 반면, URI는 리소스의 위치에 초점을 맞추지 않고 식별자에만 중점을 둡니다. 2. URL은 리소스의 위치에 대한 정보를 제공합니다. 리소스. 인터넷상의 위치에 대한 자세한 정보. URI는 URL뿐만 아니라 URN과 같이 리소스를 식별하는 데 사용되는 다른 형식도 포함하는 더 넓은 개념입니다. URL은 위치에 사용되는 특수한 유형의 URI입니다. 인터넷상의 리소스인 반면, URI는 리소스를 고유하게 식별하고 이름을 지정하는 데 사용되는 더 광범위한 식별자입니다.
