Charset
Índice
Tabela de caracteres iso-8859-1 e utf-8
iso-8859-1
Este é o charset para códigos de caracteres latinos. Assim letras acentuadas serão representadas por apenas um caractere.
palavra - Hexadecimal Ação - 41-E7-E3-6F
utf-8
Esta tabela de caracteres é [multibyte], ou seja, alguns caracteres serão representados no arquivo como 2 ou mais caracteres ASCII (o que pode dificultar a utilização de funções Lenght).
palavra - Unicode - Hexadecimal Ação - U+0041 U+00E7 U+00E3 U+006F - 41,C3 A7,C3 A3,6F
Digitando os caracteres
Cada uma das partes abaixo pode estar configurada de maneira diferente.
O sistema operacional
Para verificar qual charset o sistema linux está usando:
[user@euler]$ locale LANG=pt_BR.UTF-8 LC_CTYPE="pt_BR.UTF-8" ...
O cliente SSH
Usando o Putty, clicando em Settings/Windows/Translations podemos selecionar a tabela charset.
O editor
O editor de texto usado deve ser capaz de salvar usando a tabela de caracteres desejada.
vi
O vi (vim) possui o arquivo de configuração .vimrc no direrório home do usuário a com configuração
set fileencodings=utf-8,latin1
com que arquivos sejam editados nesses formatos. Se um arquivo iso-8859-1 é editado com um cliente SSH (em UTF-8), o arquivo é convertido ao abrir para UTF-8 e convertido de volta ao salvar para iso-8859-1 (veja [1]).
O arquivo html
Para utf-8 use o cabeçalho
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
e para iso-8859-1 use
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
O servidor Apache
Firefox
Clicando em Tools/Page Info/General podemos ver o Encoding e as tags meta.
O Firefox verifica qual encoding foi informado pelo servidor web (apache). Veja o arquivo http.conf, e procure a linha
AddDefaultCharset ISO-8859-1
Isso significa que todas as páginas saindo desse servidor serão padrão ISO-8859-1. Mesmo que especificado de forma contrária no cabeçalho html. (Isso acontece também com o Internet Explorer)
Veja Também
- utf8: Convertendo arquivos entre utf-8 e iso-8859-1
- Convertendo arquivos entre utf-8 e iso-8859-1
Ligações Externas
- http://www.phpwact.org/php/i18n/charsets, Boa explicação com bastante informação dos diferentes aspectos
- W3Cbr: Configurando o parâmetro HTTP da codificação de caracteres (charset)
- http://www.w3.org/International/O-charset.pt-br.php