2009-07-12 4 views
1

POST 매개 변수로 보내면 "š"와 같은 문자가 출력되고 %u015F으로 나오면 echo-html 유니 코드 문자의 16 진수 값인 &#351을 알게되었습니다. 그러나 이것들을 변환하는 방법에 대해서는 어떻게 생각합니까?PHP에서 문제가 발생했습니다

문자 세트가 UTF-8로 설정되어 있으며 운이없는 ISO 문자 세트로 실험했습니다.

감사합니다.

+0

출력을 & # 3 5 3으로 지정하십시오. - 위의 질문은 문자로 변환되었습니다. – Sledge

답변

0

나는 클라이언트가 대신 UTF-8 %C5%9F 인코딩의 %u015F를 보낼 것을 본 적이 없습니다. 그러나 이것을 시도하십시오 :

preg_replace('/%u([0-9a-fA-F]{2})([0-9a-fA-F]{2})/e', 'mb_convert_encoding("\x$1\x$2", \'UTF-8\', \'UTF-16BE\')', $str) 
1
htmlentities(urldecode($string))