Edição de Setembro

... revista mensal de programação Open Source

Uma edição repleta de artigos inovadores, redigidos por profissionais, com especial detaque em PHP e PHP-GTK !
  Artigos :
- Design Patterns
- Cross Site Request
- Optimização de código
- Web Services
- Manuel Lemos em entrevista
-
Parceiros :
- Yahoo
- DRI
- Adianti
- PHPClasses
A Revista PHP é distribuida por universidades, instituições e empresas
Solicite-nos informação para publicidade a preços reduzidos !


Artigo 57 / 58

Criar um site multi língua com PHP


Tags :
create a multi language web site, site com opção de linguas


Já à uns tempos que tenho vindo a ser assediado a escrever este artigo ;)
Muitos de nós gostariam de possuir um site multi língua, pois alé de alargarmos o domínio ao número de visitantes ao site, confere uma aparência mais profissional.
Para construção desta funcionalidade vamos utilizar a opão de tradução para duas línguas.
O primeiro passo é criar o ficheiro pt.php e este deve ser nomeado exactamente como o nome acima. Nesse ficheiro vamos armazenar o texto que queremos mostrar na página onde a tradução é invocada. No meu exemplo eu recorri ao uso de constantes

<?php
// constante que contem o texto a ser invocado para tradução
define("HELLO","Bemvindo ao site da Revista PHP");

/***********************************************************
Ou por opção poder-se-ia utilizar variáveis

$texto ="Bemvindo ao site da Revista PHP";
***********************************************************/


?>



Salve como "pt.php" e proceda da mesma forma para o ficheiro "en.php" adicionando o seguinte código.

<?php
define
("HELLO","Welcome to the  Revista PHP website");
?>


Agora vamos criar o ficheiro teste.php, onde vamos construir o procedimento para fazer a alteração na opção de linguagem.

Aí vamos criar os links e o mecanismo como as os ficheiros são carregados.

Segue o código comentado


 <?php 
/**********************************************
 José Franco
 16 de Junho de 2008
 Revista PHP :: www.revista-php.net
 Under Creative Commons
 *********************************************/

// não existe variável via url , a ligua é pt
if(!isset($_GET["lang"])){
$lingua "pt";
}else{
// senão a ligua é aquela selecionada pelo utilizador1
$lingua $_GET["lang"];
}


// impede que sejam carregados ficheiros diferentes
if($lingua=="pt" || $lingua=="en"){
// utiliza o valor da variável  $lingua para carregar o ficheiro
include( $lingua.".php");
}
// cria os links para selecção das línguas
echo "<a href=\""basename(__FILE__)."?lang=pt\" target=\"_self\"> 
Português </a>"
;
echo 
"&nbsp;&nbsp;";
echo 
"<a href=\""basename(__FILE__)."?lang=en\" target=\"_self\">
 English </a>"
;

//imprime o texto de acordo com a liguagem escolhida
echo "<br><hr><b>";
echo 
HELLO;
echo 
"</b>";
?> 

 


Comentários
Nome
Email
Comentário

+=
Existem 3 comentários para este artigo

Enviado por: Gerson Novais
Comentário
Interessante artigo. Entretanto é uma forma meio "BARRA PESADA" não acha? utilizando Smarty você tem o mesmo efeito sem precisar cirar constantes, imagine um sistema onde temos milhares de frases? com Smarty vc pode usar arquivos .cfg e carrega-los de acordo com o idioma escolhido.
em 23-06-2009 às 12:04:17

Enviado por: José Franco
Comentário
Não tens que agradecer
em 28-02-2009 às 04:54:53

Enviado por: Carlos Agulhas
Comentário
Andava mesmo a precisar desta dica, obrigado. vai ajudar...
em 27-02-2009 às 19:42:04



Links patrocinados

Sponsors

Revista PHP Edição online
 Estão online 5 utilizadores !
38.107.191.115

Artigos publicados online

  • em breve
  • Publicidade
  • eXTReMe Tracker

Promove-te

A Revista PHP, está a receber propostas para edição em edições seguintes. Os teus artigos serão revistos por uma equipa profissional, e publicados de acordo com o grau de profissionalismo. A revista tem um ISSN associado, o que significa que os artigos aquí publicados serão de interesse ciêntifico, podendo ser utilizados em trabalhos de pesquisa tecnologica desde que citada a fonte !