PHP_SELF, PATH_INFO, SCRIPT_NAME 및 REQUEST_URI 이해**
PHP 애플리케이션을 개발할 때 이러한 서버 변수 간의 차이점을 이해하는 것이 중요합니다. . 사용법은 다음과 같습니다.
PHP_SELF
- 일반적으로 현재 스크립트 파일을 가리킵니다. /index.php/faq/whatever
- CodeIgniter에서는 요청이 메인으로 라우팅되므로 항상 index.php입니다. Controller.
PATH_INFO
- 스크립트 이름 뒤에 경로 정보가 포함됩니다(쿼리 매개변수 제외). /faq/whatever
- URI의 특정 섹션에 액세스하는 데 유용합니다.
SCRIPT_NAME
- 실행 중인 실제 PHP 스크립트 파일을 가리킵니다. /test.php
- PHP_SELF와 달리 경로 정보나 쿼리 매개변수가 포함되지 않습니다.
REQUEST_URI
- 경로 정보 및 쿼리 매개변수를 포함한 전체 요청 URI를 나타냅니다. 예를 들어 /test.php?foo=bar
- 서버 구성에 액세스하지 않고 전체 URL을 확인하는 데 유용합니다.
실질적인 차이점
예 1: PHP_SELF 대 PHP_SELF SCRIPT_NAME
요청된 URL이 /test.php/foo/bar:
- PHP_SELF: /test 형식인 경우. php/foo/bar
- SCRIPT_NAME: /test.php
예 2: REQUEST_URI 대 SCRIPT_NAME
비어 있지 않은 쿼리 문자열이 URL에 입력된 경우:
- SCRIPT_NAME: /test.php
- REQUEST_URI: /test.php?foo=bar
예 3: REQUEST_URI 대 SCRIPT_NAME 아파치 모드와 함께 다시 작성
서버 측 리디렉션을 사용하면 예를 들어 /test.php가 /test2.php:
요청_URI: - /test.php
SCRIPT_NAME: - /test2.php
예 4: REQUEST_URI 대 SCRIPT_NAME(오류 포함) 처리
어떤 서버 변수를 선택할지 선택 사용은 특정 애플리케이션 요구 사항에 따라 다릅니다. 예를 들어 쿼리 매개변수 없이 경로 정보에 액세스해야 하는 경우 PATH_INFO가 적합합니다. 전체 요청 URI를 원할 경우 REQUEST_URI가 이 정보를 제공합니다.
위 내용은 PHP_SELF, PATH_INFO, SCRIPT_NAME 및 REQUEST_URI의 주요 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!