PHP:¿Cómo puedo configurar mi página para diferentes idiomas?
De Foros del Web
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 vacía 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 encontró algún 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 función que cumple, después la palabra que lo va a reemplazar 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 pondría en pantalla Registrarse ?>
Nótese que las palabras que definimos hay que tratarlas como variables ejemplo para poner una palabra que definimos en alguna frase sería así.
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 ( quién decía que no servían para nada xD xD) como por ejemplo postnuke ya que ocupa la misma forma para el archivo de language.
--kech 20 Jul 2003
Este artículo es parte de las FAQs de PHP y el Manual de PHP.
- Indice de las FAQs: Conceptos, Configuración, Formularios, Manejo de Archivos, Integración con Bases de Datos, Sesiones, Extensiones y Librerías, Seguridad, Funciones, Clases y Objetos, Frameworks
- Recomendamos también: Guía Zend, Frameworks PHP, Aceleradores PHP
- Agregar al FAQ: PHP: Instrucciones para agregar una pregunta al FAQ de PHP
- Para preguntas sobre PHP: Foro de Php
