Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/01/2006, 09:43
Cubatron
 
Fecha de Ingreso: diciembre-2005
Mensajes: 165
Antigüedad: 18 años, 4 meses
Puntos: 4
Lo que si podrias hacer es definir solo las constantes de cada idioma en archivos diferentes y despues mediante un include incluir el archivo de constantes correspondiente a cada idioma. Seria algo asi el codigo:

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-esp.php"); //ahora cargamos el archivo que contiene las variables y sus palabras
break;
case "en" : //en = ingles
include("lang-eng.php");
break;
default :
include("lang-esp.php"); //cargamos un idioma por defecto si no se encontro algun idioma
break;
}


Luego los archivos que contienen las palabras. El caso del archivo en español (lang-es.php) seria, por ejemplo:

<?php
define('_WEB','Sitio web');//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('_CHAT','Charla');
define('_HELO','Hola');
define('_ACCEPT','Aceptar');
?>


Y para poner la palabra correspondinete, desde el index.php:

<?
echo _WEB;//esto pondria en pantalla Sitio Web
?>


A ver si te sirve. Hasta luego.

Última edición por Cubatron; 02/01/2006 a las 07:43