Tema: FAQ's de PHP
Ver Mensaje Individual
  #72 (permalink)  
Antiguo 20/07/2003, 23:57
kech
 
Fecha de Ingreso: marzo-2003
Mensajes: 277
Antigüedad: 21 años, 7 meses
Puntos: 0
Tema: Reconocer el idioma del visitante

Pregunta: Como puedo configurar mi pagina para diferentes idiomas

Respuesta: Con HTTP_ACCEPT_LANGUAGE


Código PHP:
if(empty($sitelang)){ //primero preguntamos si la variable que va a contener el lenguage del visitante esta vacia
      
$sitelang getenv("HTTP_ACCEPT_LANGUAGE"); // si esta vacia sacamos el lenguage del visitante y lo ponemos en la variable $sitelang
      
}
switch(
$sitelang){ //ahora cargamos el archivo que contiene el idioma segun la varible que sacamos antes
          
case "es" //es = español 
             
include("./lang/lang-esp.php"); //ahora cargamos el archivo que contiene las variables y sus palabras
             
break;
          case 
"en" //en = ingles 
             
include("./lang/lang-eng.php");
             break;
          default :
             include(
"./lang/lang-esp.php"); //cargamos un idioma por defecto si no se encontro algun idioma 
             
break;
       } 

ahora el archivo que contiene las palabras con sus traducciones

lang-esp.php
Código PHP:
<?php
define
('_LOGIN','Logeado');//lo definimos con una palabra que todos los archivos de lenguage tienen que tener para definir la funcion que cumple, despues la palabra que lo va a remplazar
define('_REGISTER','Registrarce');
define('_HELO','Hola');
define('_ACCEPT','Aceptar');
define('_ACCESS_ADD','Añadir');
?>

y para poner la palabra que definimos anteriormente

Código PHP:
<?
echo _REGISTER;//esto pondria en pantalla Registrarce
?>
notece que las palabras que definimos hay que tratarlas como variables ejemplo para poner una palabra que definimos en alguna frace seria haci

echo "hola esta un una prueba para mostrar registrado en tu idioma "._REGISTER." bla bla";


un listado de palabras listas para copiar pegar en sus archivos las pueden sacar de las aplicaciones prefabricadas ( quien decia que no servian para nada xD xD) como por ejemplo postnuke ya que ocupa la misma forma para el archivo de lenguage

salu2