pues yo lo hacia como dices pero solo para webs con poco contenido porque para grandes cantidades de informacion actualizarlo seria tedioso.
para cambiar de idioma lo hacia asi "index.php?lang=nl "
Código PHP:
Ver originalheader('Cache-control: private'); // creo que esto era por un bug en IE 6 if(isset($_GET['lang'])){ $lang = $_GET['lang'];
//registra sesion
$_SESSION['lang'] = $lang;
//define cookie
//busca en variables cookie y session
}
else if(isset($_SESSION['lang'])) {
$lang = $_SESSION['lang'];
}else if(isset($_COOKIE['lang'])) {
$lang = $_COOKIE['lang'];
}else
{
$lang = 'en';
}
switch ($lang) {
case 'en':
$lang_file = 'en'; /** ingles **/
break;
case 'es':
$lang_file = 'es'; /** espaniol **/
break;
case 'nl':
$lang_file = 'nl'; /** holandes **/
break;
default:
$lang_file = 'en'; /** Por defecto ingles **/
}
//print_r($_SESSION);
include_once 'lang'.DS.$lang_file.'.php';
Creo que era mas eficiente con arrays asociativos que con constantes saludos