使用时间定义语言


Define language using the time

我需要定义一种预定义的语言,可以从西班牙语更改为葡萄牙语,西班牙时间是GMT+2和葡萄牙GMT+1,服务器的时区是GMT+2,这样我就可以从用户访问的哪个国家知道,并定义更方便的语言。我正在考虑定义一个cookie,并使用AJAX导入一个具有一些php条件的文件。

你有什么建议?有什么提示吗?

使用php的变量$_SERVER['HTTP_ACCEPT_LANGUAGE']会更有效!

就像其他人建议的那样,您应该使用"accept language"标头。

如果出于某种未知的原因,你真的想通过时区来确定,你可以通过IP或W3C地理位置API来查找他们的国家,也可以通过中间页面的人来编写一些javascript,让他们的时间过去。

通过PHP和Man In The Middle JS查找时区

session_start();
if($_REQUEST['user_time'])
{
    $_SESSION['user_time'] = $_REQUEST['user_time'];
}
if(!isset($_SESSION['user_time']))
{
    echo "<script type='"text/javascript'">"; 
    echo "document.location.href = '?user_time=' + new Date().getTime();"; 
    echo "</script>";
}
else
{ 
    //normal page execution here
}

W3C API地理定位

http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/

使用Google的地理位置API查找国家/地区

http://googlecode.blogspot.com/2008/08/two-new-ways-to-location-enable-your.html