Mostrar Contenido de acuerdo al pais en php

El siguiente script para PHP envía el código del país y del lenguaje cuando el navegador lo solicita.
Muchas veces, y sobre todo los webmaster internacionales, nos hemos encontrado con la necesidad de mostrar un contenido de acuerdo al pais y los idiomas.

En este Taller de PHP vamos a ver un sencillo código que permitirá conocer el país del usuario y mostrar una página distinta para cada caso.

<?php

// cambia pagina.php por el archivo correcto de acuerdo al pais

if (isset($pais) && ($pais <> '')) {
$dgo_pais = substr($pais,0,5);
} else {
$dgo_pais = substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,5);
}
switch ($dgo_pais) {

case "es-mx":
//si el pais es mexico
include("pagina.php");
break;

case "es-ar":
//si el pais es argentina
include("pagina.php");
break;

case "es-cl":
//si el pais es chile
include("pagina.php");
break;

case "es-ve":
//si el pais es venezuela
include("pagina.php");
break;

case "pt-br":
//si el pais es brasil
include("pagina.php");
break;

case "es-co":

//si el pais es colombia
include("pagina.php");
break;

case "es-ec":

//si el pais es ecuador
include("pagina.php");
break;

case "es-uy":

//si el pais es uruguay
include("pagina.php");
break;

default:
//si es algun otro pais
include("pagina.php");
break;
}
?>


Recuerda cambiar pagina.php por la pagina de cada pais, por ejemplo, pagina-mexico.php. Se puede usar este script como pagina principal, para que sea distinta en función del país.

Compartir

Comentarios

j0ker

12/10/2007
Sabes tu articulo me sirvio, pero solo para usar una palabra...
:X
mira... yo lo tengo aun mas simple que eso:

$l=$_GET['lang'];
if(empty($l)){
$lang=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
if($lang=='es'){
header("location: ./?lang=es");
}
if($lang=='en'){
header("location: ./?lang=en");
}
}

saludos

pablo

09/6/2010
$pais de donde procede
La variable $pais que coge el pais? de la conexion a internet, de donde sea el pais, lenguaje instalado....