使用时间定义语言

时间:2011-05-29 02:12:07

标签: php javascript ajax

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

你有什么建议?任何提示?

2 个答案:

答案 0 :(得分:4)

使用php的变量$_SERVER['HTTP_ACCEPT_LANGUAGE']

会更有效

答案 1 :(得分:1)

与其他人一样,你应该使用“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 Geolocation 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