* URL에 공백이나 한글 같은 멀티바이트 문자가 포함되었다면, URL 인코딩이 필요합니다.
● URL 인코딩
: rawurlencode()와 urlencode()함수가 있습니다. 두 함수는 공백 문자를 취급하는 방법이 다릅니다.
rawurlencode()는 공백문자를 %20로 변환하고 urlencode()는 +로 변환합니다.
주로, urlencode()함수는 쿼리 문자열이나 쿠키값으로 사용하는 형식입니다.
$page변수에 인코딩을 해줄 페이지의 파일명을 값으로 넣줍니다.
$path변수에 실제 인코딩을 해주는 함수를 사용하고, 파라미터로 $page변수를 넣어줍니다.
$url 변수에 실제 URL의 도메인과 경로를 붙여서 만들어줍니다.
위처럼 멀티바이트문자가 인코딩 결과를 보실수있습니다.
● URL 디코딩
: 위에서 URL인코딩된것을 디코딩해주는 작업으로써, rawurldecode(), urldecode()함수로 디코딩해줄수있습니다.
처음 URL인코딩해주었던 값을 그대로 $encode변수에 저장해주니다.
그리고 $decode변수에 rawurldecode()함수를 호출해서 파라미터로 해당 변수를 넘겨줍니다.
출력해주면 처음 인코딩되기전의 값이 출력됩니다.
'Programming Language > PHP' 카테고리의 다른 글
[PHP] addslashes (), stripslashes () 와 get_magic_quotes_gpc ()함수 (0) | 2020.01.04 |
---|---|
[PHP] 첫 문자를 대문자로 치환하는 함수 - unfirst (0) | 2019.12.15 |
[PHP] 폼 입력 처리의 기본 ( GET, POST로 송수신하기 ) (0) | 2019.11.17 |
[PHP] preg_match ( 패턴일치 & 정규표현식 적용) (0) | 2019.10.17 |
[PHP] 배열의 요소 삭제 & 치환 & 연결과 분리, 중복제거 (array_merge, array_combine, array_unique 등) (0) | 2019.09.12 |
[PHP] 배열의 정의 및 explode, implode, define함수 (0) | 2019.09.11 |
[PHP] sprintf(), vprintf(), number_format() (0) | 2019.09.10 |
[PHP] 문자열을 형식화해서 출력하기 - printf(), 타입지정자 (0) | 2019.09.09 |