PHP – Traduzindo e localizando páginas Web com gettext

Criação do arquivo de suporte à localização PHP

O objetivo do arquivo que será criado é analisar qual é o idioma requisitado e informar o PHP para localizar a página nele. A linguagem pode ser requisitada das seguintes formas:

1. Através do protocolo HTTP

Acredito que a forma mais formal de analisar a idioma requerido é através do próprio protocolo HTTP. Um dos campos que o navegador enviará na maior parte das vezes (mas nem sempre, pois não é um campo obrigatório) é o Accept-Language. Ele possui o seguinte formato:

Accept-Language: pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4

Ou seja, o navegador informa que prefere a pagina em pt-BR, porém aceita pt, en-US e en, nesta ordem. O parâmetro q representa a aceptabilidade, basicamente o quão aquele idioma é preferível. Caso a página não seja suportada nos idiomas da lista, pode-se enviar em um idioma padrão.

 

2. Através de um parâmetro GET forçado

Pode-se forçar o idioma por uma variável GET. Um pedido por GET sobrescreve o pedido do protocolo. Para forçar um idioma, o usuário poderá solicitar a página através da URL, como:

http://site.com.br/pagina.php?lang=en

 

3. Através de COOKIES ou configurações salvas em Bancos de Dados

Se a página for de um sistema onde há uma sessão de configurações, o sistema pode armazenar o idioma do usuário em um cookie sem expiração ou em um banco de dados com as preferências do usuário que está logado no sistema.

 

Criaremos o arquivo de suporte com o nome i18n.php na raiz do site com o seguinte conteudo:


Comentários