URL 인코딩을 ISO-8859-1
URL로 반환해야하지만 PHP로 어떻게 처리합니까?ISO-8859-1을 사용하여 urlencode하는 방법은 무엇입니까?
urlencode('åäö')
을 실행하면 %C3%A5%C3%A4%C3%B6
이 반환됩니다. 내가 원하는 건 %E5%E4%F6
입니다.
http://quick-encoder.com/url/은 두 가지 형식을 모두 반환 할 수 있습니다.
URL 인코딩을 ISO-8859-1
URL로 반환해야하지만 PHP로 어떻게 처리합니까?ISO-8859-1을 사용하여 urlencode하는 방법은 무엇입니까?
urlencode('åäö')
을 실행하면 %C3%A5%C3%A4%C3%B6
이 반환됩니다. 내가 원하는 건 %E5%E4%F6
입니다.
http://quick-encoder.com/url/은 두 가지 형식을 모두 반환 할 수 있습니다.
입력 문자열을 인코딩하기 전에 입력 문자열을 ISO-8859-1
으로 코드 변환해야합니다. 당신은 그것을 위해 iconv()
을 사용할 수 있습니다 : 당신의 지정된 출력에서
$r = urlencode(iconv('UTF-8', 'ISO-8859-1', 'åäö'));
echo $r; // %E5%E4%F6
을, 나는 소스 파일이 UTF-8
인코딩, 또는 적어도 예를 들어 문자열 åäö
을한다고 가정합니다. 동적 데이터로 작업하는 경우 입력 인코딩을 알아야합니다.
여기서해야 할 일은 원하는 형식으로 잘 형식화 된 문자열을 인코딩하는 것입니다.
<?php
$str = "åäö";
echo urlencode(mb_convert_encoding($str, "ISO-8859-1", "UTF-8"));
// %E5%E4%F6
?>
건배 : 그래서 먼저이 같은 mb_convert_encoding()
로 변환 할 수 있습니다.
urlencoding 및 iso 인코딩은 완전히 다른 것입니다. urlencoding은 7 비트 인코딩 (ASCII)이고 iso는 8 비트 인코딩을 의미합니다. 문자열을 iso로 인코딩 된 문자열로 전환하는 간단한 기능은 없으며 기술적 인 관점에서 이해가되지 않습니다. 변환하기 전에 어떤 인코딩을 사용하는지에 따라 다릅니다. – arkascha