2011-08-17 6 views
0

내가 정돈과 같이 PHP의 사용을 만드는 중이라서 :PHP 깔끔한 및 문자 인코딩

$config = array(
       'wrap'       => 0, 
       'lower-literals'    => 1, 
       'preserve-entities'   => 1, 
       'drop-empty-paras'    => 0 
       ); 

$tidy = new tidy; 

$tidy->parseString($html, $config, 'utf8'); 

$tidy->cleanRepair(); 

내가 영어 텍스트와 HTML에 전달하는 경우가 밖으로 잘 온다. 그러나 프랑스어 텍스트는 인코딩에 문제가 있습니다. 따라서 vérifier과 같은 것을 전달하면 출력에 vérifier으로 나타납니다. 어떻게하면 모든 언어로 멋지게 플레이 할 수 있습니까?

또한, 나는 깔끔한 출력을 PHP의 DOM 문서로 전달할 것입니다. 여기서주의해야 할 것은 무엇입니까?

답변

3

UTF-8 처리가 정상적으로 작동하는 것처럼 보입니다. 그러나 UTF-8 대신 latin-1로 결과를 해석합니다. 적절한 HTTP 헤더 또는 메타 태그를 설정하여 브라우저에 UTF-8을 사용하여 문서를 읽도록 지시하십시오.

header('Content-Type:text/html; charset=utf-8'); 
+0

실제로 당신이 옳습니다. 문제를 일으키는 Google 구문 강조 표시입니다. 좀 더 구체적으로'htmlentities' 문제입니다. 그래서'pre' 태그에 HTML을 보여줄 수 있습니다. – Abs

+1

@Abs'htmlentities'는 세 번째 매개 변수로 문자 세트를 취합니다. 시도해보십시오. – deceze

+0

완벽한, 감사합니다. – Abs