Pergunta

Eu tenho uma página de PHP com caracteres latinos e árabes mistos. A tag de declaração de charset está no código HTML

e o arquivo é salvo como UTF-8. Todo o texto é estático e no arquivo php (não vem de um banco de dados ou fonte externa)

Quando eu navego para o site, algumas páginas são corrompidas aleatoriamente no IE e FF e exibem todos os pontos de interrogação. Depois de atualizar a página, o texto é exibido corretamente ... trabalho com árabe e hebraico há muito tempo e é a primeira vez que vou a esse problema. Alguém pode pensar em uma causa?

Chrome está sempre bem ...

Foi útil?

Solução

Acontece que a referência de script que foi antes da meta descrição estava causando o problema. Eu me mudei<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Para ser o primeiro item após a tag da cabeça de abertura e isso não é mais um problema. Obrigado por todos os comentários..

PS Eu não fui eu quem codifica esta página e apenas trabalhando para localizá -la, é por isso que eu nem pensei que a meta tag depois do script faria a diferença ...

Outras dicas

Tente enviar um cabeçalho apropriado, algo assim:

header("Content-Type: text/xml; charset=utf-8");

Tente usar o UTF8_ENCODE em seu conteúdo:

http://php.net/manual/en/function.utf8-encode.php

Se você tiver algum texto que deseja armazenar em um banco de dados e exibir, mesmo que a codificação da página seja Latin-1, existe uma ferramenta gratuita que pode converter Unicode para HTML escapado:

http://www.sprawk.com/tools/escapeunicode

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top