PHP urlencode 함수가 utf-8 과 euc-kr 에서 결과값이 다르다 > 개발

본문 바로가기

사이트 내 전체검색

뒤로가기 개발

PHP urlencode 함수가 utf-8 과 euc-kr 에서 결과값이 다르다

페이지 정보

작성자 관리자 (61.♡.12.126) 작성일 16-04-24 19:49 조회 6,794 댓글 0

본문

url 의 특수문자를 변환하기 위해서 urlencode 를 사용한다.
그런데, 인코딩하는 문자열의 캐릭터셋에 따라서 결과값이 다르다.

utf-8 로 된 웹사이트와 euc-kr 로 된 웹사이트 사이데 파라미터를 주고 받을 때,
PHP urlencode 함수가 utf-8 과 euc-kr 에서 결과값이 다르다

예를 들어, $str 이 utf-8 문자열이라고 가정한다면,
일반적인 경우에 그냥
urlencode($str)
이렇게 하면 된다.

그런데, 보내는 곳의 웹사이트가 euc-kr 이라면,
urlencode(iconv("UTF-8","EUC-KR",$str))
이런식으로 euc-kr 로 바꾼 후에 urlencode 를 해야 한다.





urlencode

(PHP 4, PHP 5, PHP 7)
urlencode — 문자열을 URL 인코드

설명 ¶

string urlencode ( string $str )
이 함수는 URL의 쿼리 부분에 사용할 수 있도록 문자열을 인코드할 때 편리합니다. 다음 페이지로 편하게 변수를 전달할 수 있습니다.

인수 ¶

str
인코드할 문자열.

반환값 ¶

-_.을 제외한 모든 영숫자가 아닌 문자를 퍼센트(%) 사인에 이어지는 두 16진수로 교체하고 공백은 플러스(+) 사인으로 교체한 문자열을 반환합니다. 이는 WWW 폼에서 인코드한 포스트 데이터, application/x-www-form-urlencoded 매체형과 같은 방식의 인코드입니다. 역사적인 이유로 공백을 더하기 부호(+)로 인코드 하는 점이 » RFC 1738 인코딩(rawurlencode() 참고)과 다릅니다.

추천0

댓글목록 0

등록된 댓글이 없습니다.

전체 386건 1 페이지
게시물 검색
Copyright © Baragi.Net All rights reserved.
PC 버전으로 보기