> 백엔드 개발 > PHP 튜토리얼 > PHP에서 쿼리 문자열 없이 URL 경로를 효율적으로 추출하려면 어떻게 해야 합니까?

PHP에서 쿼리 문자열 없이 URL 경로를 효율적으로 추출하려면 어떻게 해야 합니까?

Susan Sarandon
풀어 주다: 2024-12-01 21:33:10
원래의
328명이 탐색했습니다.

How Can I Efficiently Extract a URL Path Without the Query String in PHP?

쿼리 문자열 없이 URL 경로 추출

웹 개발에서는 URL을 사용하고 해당 구성 요소를 조작해야 하는 경우가 많습니다. 일반적인 시나리오 중 하나는 URL 매개변수 목록이라고도 알려진 쿼리 문자열 없이 URL 경로를 검색해야 하는 것입니다.

문제:

다음 형식의 URL을 처리할 때 "www.example.com/myurl.html?unwantedthngs"의 경우 물음표(?)와 그 뒤에 오는 모든 항목을 제거하여 다음과 같은 깨끗한 URL 경로를 얻을 수 있습니다. "www.example.com/myurl.html."

해결책:

이 작업을 수행하려면 PHP의 strtok() 사용과 같은 다양한 기술을 사용할 수 있습니다. 기능. strtok()는 지정된 구분 기호를 기반으로 문자열을 토큰화할 수 있는 강력한 함수입니다.

예:

$url = strtok($_SERVER["REQUEST_URI"], '?');
로그인 후 복사

이 예에서는 strtok를 사용합니다. ()는 $_SERVER["REQUEST_URI"]를 두 개의 하위 문자열로 분할합니다. 첫 번째 하위 문자열에는 첫 번째 하위 문자열까지의 URL 경로가 포함됩니다. 물음표가 발생하고 두 번째 하위 문자열(삭제함)에는 쿼리 문자열이 포함됩니다.

대체 기술:

strtok()은 간결하고 효과적인 방법입니다. URL 경로를 추출하기 위해 다음과 같이 탐색할 수 있는 다른 기술이 있습니다. Well:

  • explode():explode()를 사용하여 URL을 물음표 구분 기호에 따라 배열로 분할할 수 있습니다. 그러나 전체 URL을 확장하는 것이 항상 필요한 것은 아닐 수도 있습니다. 특히 URL 경로만 필요한 경우에는 더욱 그렇습니다.
  • strstr() with true: strstr()의 세 번째 매개변수를 true로 설정 을 사용하면 물음표가 처음 나타나는 위치까지의 URL 경로를 얻을 수 있습니다. 그러나 이 방법은 strtok() 또는Explode()만큼 안정적이지 않습니다.
  • substr() 및 strrpos(): substr()을 사용하여 처음부터 부분 문자열을 추출할 수 있습니다. strrpos()를 사용하여 결정된 물음표의 마지막 위치까지의 URL입니다. 그러나 이 방법은 특히 쿼리 문자열 없이 URL을 처리할 때 완전히 신뢰할 수는 없습니다.

결론:

strtok()은 강력하고 신뢰할 수 있는 기술입니다. 쿼리 문자열 없이 URL 경로를 추출합니다. 이는 PHP 코드에서 이 작업을 수행하는 간결하고 효율적인 방법을 제공합니다.

위 내용은 PHP에서 쿼리 문자열 없이 URL 경로를 효율적으로 추출하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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