Personagens árabes corrompidos no pouso, bem após a atualização - UTF8
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 ...
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:
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: