현재 위치: > 최신 기사 목록> parse_url을 사용하여 포트 번호로 URL을 분석하십시오

parse_url을 사용하여 포트 번호로 URL을 분석하십시오

gitbox 2025-05-28

웹 개발에서 URL은 데이터 전송 및 페이지 리디렉션에 중요한 캐리어입니다. PHP는 URL을 구문 분석하고 구성 요소를 추출하기위한 내장 기능 Parse_url ()을 제공합니다. 이는 사용자 요청, 리디렉션, 링크 분석 및 기타 시나리오를 처리하는 데 매우 유용합니다.

특히 포트 번호가 포함 된 완전한 URL을 처리 할 때 Parse_url ()은 여전히 ​​포트 부분을 올바르게 인식하고 반환합니다. 이 기사는 예제를 사용하여 parse_url ()을 사용하여 포트 번호가 포함 된 URL 정보를 추출하는 방법을 설명합니다.

1. parse_url () 함수 소개

parse_url () 는 다음과 같이 구문이있는 PHP 내장 기능입니다.

 parse_url(string $url, int $component = -1): mixed
  • $ URL : 완전한 URL 문자열을 구문 분석합니다.

  • $ 구성 요소 (선택 사항) : URL의 일부만 리턴을 지정합니다. 예를 들어, php_url_port를 사용하면 포트 번호 만 반환합니다.

반환 결과는 일반적으로 다음 키를 포함하는 연관 배열입니다 (URL의 실제 내용에 따라 다를 수 있음).

  • 체계 : HTTP 또는 HTTPS 와 같은

  • 호스트 : 도메인 이름

  • 포트 : 포트 번호

  • 사용자패스 : 인증 정보

  • 경로 : 경로

  • 쿼리 : 쿼리 문자열

  • 조각 : 조각 식별자

2. 포트 번호를 포함하는 URL을 구문 분석하는 예

실질적인 예를 살펴 보겠습니다.

 <?php
$url = "https://gitbox.net:8080/user/profile?id=42#section1";

$parts = parse_url($url);

echo "<pre>";
print_r($parts);
echo "</pre>";
?>

출력 결과는 다음과 같습니다.

 Array
(
    [scheme] => https
    [host] => gitbox.net
    [port] => 8080
    [path] => /user/profile
    [query] => id=42
    [fragment] => section1
)

보시 다시피 Parse_url ()는 gitbox.net을 호스트 이름으로, 8080을 포트 번호로 성공적으로 식별하고 경로, 쿼리 매개 변수 및 앵커 포인트와 같은 다른 부분을 정확하게 추출했습니다.

3. 별도의 구성 요소를 얻습니다

때때로 우리는 URL의 일부만 필요합니다. 예를 들어 포트 번호 만 추출됩니다.

 <?php
$url = "http://gitbox.net:3000/dashboard";

$port = parse_url($url, PHP_URL_PORT);
echo "포트 번호는입니다: " . $port;
?>

산출:

 포트 번호는입니다: 3000

이 방법은 전체 배열을 구문 분석 한 후 수동으로 필드를 얻는 것보다 더 간결하고 효율적입니다.

IV. 응용 프로그램 시나리오

  • URL 리디렉션 판단 : 포트를 기반으로 점프 정책을 선택하십시오.

  • API 라우팅 분석 : 서비스 배포는 다른 포트에 대해 수행됩니다.

  • 로그 분석 : 레코드의 URL을 구문 분석하여 포트 소스를 얻습니다.

5. 주목할만한 것들

  1. URL에 지정된 포트가 없으면 parse_url ()에 의해 반환 된 배열 에는 포트 키가 포함되어 있지 않습니다.

  2. parse_url ()은 URL의 정당성을 확인하지 않으며 형식별로 만 분할됩니다.

  3. URL이 올바르지 않은 경우 (예 : 프로토콜 헤더가 포함되어 있지 않음), 구문 분석 실패 또는 불완전한 결과가 발생할 수 있습니다.

6. 요약

parse_url () 는 특히 포트 번호가 포함 된 전체 URL을 처리 할 때 매우 실용적인 기능입니다. 이를 통해 개발자는 URL을 쉽게 분해하고 다양한 시나리오에 유연하게 적용 할 수 있습니다. 코드의 명확성과 유지 가능성을 향상시키기 위해 URL 관련 논리를 작성할 때이 기능을 최대한 활용하는 것이 좋습니다.