PHP : 문자열의 공백을 % 20으로 변환 하시겠습니까?


84

문자열의 공백을 어떻게 변환 할 수 %20있습니까?

내 시도는 다음과 같습니다.

$str = "What happens here?";
echo urlencode($str);

출력은 "What+happens+here%3F"이므로 공백은로 표시되지 않습니다 %20.

내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변:


200

rawurlencode대신 함수를 사용하십시오 .


1
URL (쿼리 부분이 아님)에 이것을 사용하는 경우 슬래시로 변환하면 URL이 작동하지 않습니다. 따라서 공백을 처리해야하는 경우 (해당 URL 일 수도 있음) str_replace를 제안합니다.
Lukáš Řádek

26

더하기 기호는 함수 도움말설명 된 대로 URL 매개 변수의 공백 문자에 대한 기록 인코딩입니다 urlencode().

동일한 페이지에 필요한 답변이 포함되어 있습니다. rawurlencode()대신 RFC 3986 호환 인코딩 을 얻으십시오 .


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.