> 백엔드 개발 > PHP 튜토리얼 > PHP_SELF, PATH_INFO, SCRIPT_NAME 및 REQUEST_URI: 차이점은 무엇입니까?

PHP_SELF, PATH_INFO, SCRIPT_NAME 및 REQUEST_URI: 차이점은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-11-02 15:48:02
원래의
194명이 탐색했습니다.

PHP_SELF, PATH_INFO, SCRIPT_NAME, and REQUEST_URI: What's the Difference?

PHP_SELF 대 PATH_INFO 대 SCRIPT_NAME 대 REQUEST_URI: 차이점 이해

PHP 애플리케이션을 개발할 때 PHP_SELF, PATH_INFO의 차이점을 이해하는 것이 중요합니다. , SCRIPT_NAME 및 REQUEST_URI. 이러한 서버 변수는 현재 스크립트의 주소에 대한 정보를 제공하며 탐색 및 URL 재작성에 유용할 수 있습니다.

PHP_SELF에는 일반적으로 스크립트 이름과 경로를 포함하여 현재 스크립트의 전체 URI가 포함됩니다. 정보. 그러나 요청이 http://example.com/test.php/foo/bar 형식인 경우 SCRIPT_NAME과 다를 수 있습니다.

PATH_INFO에 경로가 포함되어 있습니다. 요청 URI 끝에 있는 정보. 그러나 요청 URI가 위에서 언급한 형식인 경우에만 채워집니다.

SCRIPT_NAME은 경로 정보를 제외한 현재 스크립트의 이름을 나타냅니다. URI에 /가 없는 한 일반적으로 PHP_SELF와 동일합니다.

REQUEST_URI에는 경로, 쿼리 문자열 및 앵커를 포함한 전체 요청 URI가 포함되어 있습니다. 쿼리 문자열이 있거나 서버측 리디렉션이 사용되는 경우 PHP_SELF 및 SCRIPT_NAME과 다릅니다.

차이점을 설명하기 위해 다음은 몇 가지 실제 예입니다.

예 1:
http://example.com/test.php/foo/bar

  • PHP_SELF: /test.php/foo/bar
  • SCRIPT_NAME: /test .php

예 2:
http://example.com/test.php?foo=bar

  • SCRIPT_NAME: / test.php
  • 요청_URI: /test.php?foo=bar

예 3:
http://example.com/test. php(mod_rewrite 리디렉션 사용)

  • REQUEST_URI: /test.php
  • SCRIPT_NAME: /test2.php

예 4:
IIS의 사용자 정의 오류 페이지:
http://example.com/test.php

  • SCRIPT_NAME: /404error.php
  • REQUEST_URI: /404error. php?404;http://example.com/test.php

이러한 차이점을 이해하면 적절한 서버 변수를 효과적으로 활용하여 PHP에서 탐색, URL 재작성 및 오류 처리를 처리할 수 있습니다. 응용 프로그램입니다.

위 내용은 PHP_SELF, PATH_INFO, SCRIPT_NAME 및 REQUEST_URI: 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿