rawurlencode()
함수 사용법
rawurlencode()
함수는
주어진 문자열을 RFC 3986에 따라 URL에 사용할 수 있도록 인코딩합니다.
공백은 %20
로 인코딩됩니다.
rawurlencode()
함수는 문자열을 RFC 3986에 따라 URL로 사용할 수 있도록 인코딩하는 함수입니다.
RFC 3986은
URL 인코딩을 위한 표준으로, 알파벳 대소문자, 숫자, -
, _
, .
, ~
문자를 제외한 모든 문자는 두 개의 16진수 숫자를 뒤따르는 백분율(%
) 기호와 함께 대체됩니다. 그리고 공백은 %20
로 인코딩됩니다.
주의하세요!
한 가지 주의할 점은 공백 문자가 %20
으로 인코딩된다는 것입니다. urlencode()
함수의 경우 공백 문자가 +
로 인코딩됩니다. 따라서, 공백 문자를 +
로 인코딩해야 하는 상황(일반적으로, HTML 양식에서 수집한 데이터를 URL의 쿼리 문자열에 추가하거나 다른 페이지로 전달하는 경우)에는 rawurlencode()
함수를 사용하지 않는 것이 좋습니다.
rawurlencode()
함수의 형식은 다음과 같습니다.
구문
매개변수
$string |
인코딩할 URL입니다. |
---|
반환 값
알파벳 대소문자, 숫자, -
, _
, .
, ~
문자를 제외한 모든 문자는 두 개의 16진수 숫자를 뒤따르는 백분율(%
) 기호와 함께 대체됩니다. 또한 공백은 %20
로 인코딩됩니다.
이는 리터럴 문자가 특수 URL 구분 기호로 해석되는 것을 방지하고 문자 변환(일부 전자 메일 시스템과 같은)이 있는 전송 매체에 의해 URL이 손상되는 것을 방지하기 위해 RFC 3986에 설명된 인코딩입니다.
예시 사용법
rawurlencode()
함수는 주로 정한 요구 사항이나 URL 구문 규칙을 엄격하게 준수해야 하는 경우에 사용합니다. 그렇지 않은 경우에는 대부분 urlencode()
함수를 사용합니다.
rawurlencode()
함수를 사용하여 특정한 요구 사항이나 엄격한 URL 구문 규칙을 준수해야 하는 상황 중 하나는 파일 경로를 URL에 추가할 때입니다. 파일 경로에는 공백이나 특수 문자가 포함될 수 있으며, 이를 URL에 올바르게 추가하려면 rawurlencode()
함수를 사용해야 합니다.
예를 들어, 웹 서버에서 이미지 파일의 경로를 URL에 추가해야 하는 경우를 생각해보겠습니다. 파일 경로에는 공백(''
), 슬래시(/
)와 같은 특수 문자가 포함될 수 있습니다.
위의 예시에서는 파일 경로에 포함된 공백과 슬래시를 rawurlencode()
함수를 사용하여 URL에 안전하게 추가하고, 최종적으로 이미지 URL을 생성합니다. 이렇게 하면 파일 경로의 특수 문자가 URL 규칙을 준수하면서도 웹에서 올바르게 처리됩니다.
이처럼 rawurlencode()
함수는 파일 경로와 같이 URL에 공백이나 특수 문자가 포함된 데이터를 처리해야 할 때 유용하며, 데이터가 URL 규칙을 엄격하게 준수해야 하는 상황에서 사용됩니다.