2009-12-31 6 views
1

ANSI로 변합니다 :이것에 관해 뭔가 이상한 것이 있습니까? 이 파일은 항상 내가 파일을 생성하고 UTF-8 로 저장이 코드를 배치 한

<div class="top_pic"> 
    <img src="<?php echo $this->images_dir ?>image.jpg" alt="doc ao fim do dia" width="632" height="320"/> 
</div> 
<div id="conteudo_menu"> 
    <?php echo $this->conteudo_menu ?> 
</div> 
<div id="item_list"> 
    <?php echo $this->vinhos_lista ?> 
</div> 

내가 저장하고 다시 그것은 ISO-8859-1입니다.

내가 메모장 ++ 및 Dreamweaver를 사용하여 수정 시도했습니다. 항상

같은 결과. 이 페이지는 utf-8에 문자열을 표시하기 때문에 페이지가 엉망입니다.

하세요! 누군가 나를 도와주세요 !!

편집 :

마침내 수정했습니다. 모든 것을 utf8로 강제하기 위해 mb_convert_encoding을 사용했습니다.

모든 도움에 감사드립니다!

+0

파일의 HEAD 섹션을 보여주세요! –

답변

1

PHP는보고 또는 스크립트 파일을 인코딩하는 것이 무엇인지 알고하지 않습니다 - PHP는 단순히 단일 바이트 문자의 무리로 생각하고, 뭔가가 이러한 문자를 기반으로 발생합니다. 바이트는 UTF-8 (당신이해야한다, 그런데)에 대응 아무것도하는 방식으로 문자를 사용하지 못하도록 없지만, 해당 컨텐츠 유형 헤더 (모든 출력이 전송되기 전에 header('Content-Type: text/html;charset=utf-8');)를 보낼 수 있도록 책임과/또는 META 태그를 사용하여 페이지가 올바르게 해석되는지 확인하고 데이터베이스 연결이 적절한 문자 세트를 사용하는지 확인하십시오.

+0

나는 그 질문을 편집했다. 하지만 내가 말한대로 파일은 utf8로 저장됩니다. 메인 템플릿에서 헤더에 utf8이 있습니다! – AntonioCS

+0

글쎄, 그건 네 배치에 뭔가를 엉망으로 만들 것을 제안한다. PHP가 새로운 경고 또는주의 사항을 제공하는지 확인 했습니까? 여러분의 추가로 인해 갑자기 적절한 header() - 명령 전에 출력이 발생할 수 있습니다. (헤더에 charset이 정의되어 있고 서버가 기본 설정을 추가하고있는 경우, META 태그를 무시해야한다는 메시지가 표시되므로 올바른 utf-8 헤더가 갑자기 전송되지 않으면, 그럴 수 있습니다.) –

+0

PHP와 관련이없는 것처럼 보입니다. 그것은이 코드로 윈도우를 ANSI로 인코딩 할 때와 비슷합니다. 적어도 이것은 내가 얻고있는 결론이다 – AntonioCS

관련 문제