Ver Mensaje Individual
  #5 (permalink)  
Antiguo 10/04/2011, 19:26
Avatar de uikekarallo
uikekarallo
 
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 3 meses
Puntos: 16
Respuesta: Pagina multidioma

Hola.

Otra opción es utilizar un mismo array para cada idioma, divididos en 2 archivos diferentes y, definido por una variable de sesión php, mostrar uno u otro.

Un ejemplo puede ser el siguiente:

Español (es.php)
Código PHP:
<?php
    $lang 
= array();
    
$lang['idioma'] = 'Español';
    
    
$lang['menu_inicio'] = 'Inicio';
    
$lang['menu_servicios'] = 'Servicios';
    
$lang['menu_servicios_instalaciones'] = 'Instalaciones';
    
$lang['menu_servicios_plano'] = 'Plano';
?>
Inglés (en.php)
Código PHP:
<?php
    $lang 
= array();
    
$lang['idioma'] = 'English';
    
    
$lang['menu_inicio'] = 'Home';
    
$lang['menu_servicios'] = 'Services';
    
$lang['menu_servicios_instalaciones'] = 'Facilities';
    
$lang['menu_servicios_plano'] = 'Map';
?>
Y lo controlas por una variable de sesión en el principio de cada página de esta manera:
Código PHP:
<?php
    session_start
();
    if( !
$_SESSION['lang'] ){ $_SESSION['lang'] = 'es'; }
    
$root $_SERVER['DOCUMENT_ROOT'];
    include(
$root.'/languages/'.$_SESSION['lang'].'.php');
?>
Luego, donde vaya el texto correspondiente, utilizas el array <?php echo $lang['menu_inicio']; ?> y, según la variable de sesión se mostrará en un idioma u otro. De esta manera ahorras el uso de una base de datos y, bueno, para gustos. A mi me es más fácil tener los lenguajes en un array divido en 2 archivos. Creo que es más útil.


Saludos.