PHP如何依用户作业系统语系自动选择网站语系?

maxmas

maxmas

ZIY 贵宾
2008-08-27
503
363
47
New Taipei
#1
想请教各位大大
我想要以USER的作业系统(XP,Linux,MAC...)之版本语系,
判断用户所使用之语系,然后自动对应网站呈现的语系,
例如华人居住在国外,使用英文版或西班牙文版的XP系统,
当他进入我的网站,我就自动对应到英文版或西班牙文版的语系,
应该他会使用英文版或西班牙文版的XP系统,表示他起码懂英文或西班牙文,
那如果他要改为繁简体中文,他自己再选择语系即可,
我逛过一些商业网站,进入后它自己会呈现我使用的语系,
不过如果用IP档来判断来源,其实并不准确,
我想使用USER的作业系统来判断是最准确的,
但不知道PHP是否可独立判断,或是需要搭配Javascript,
希望知道的朋友们能提供......
也欢迎大家讨论看看.....
:have a nice day:
 
H

hstar

謎~
2008-02-10
1,612
610
44
www.ihstar.com
#2
一般有好幾種做法~~~你說用javascript也是一種做法。
不過我常用這樣的方式來處理

preg_match('/^([a-z-]+)/i', strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']), $matches);
$lang = $matches[1];
switch ($lang) {
case 'zh-cn' :
$langfile = 'zh-cn';
break;
case 'zh-tw' :
$langfile = 'zh-tw';
break;
case 'zh-hk' :
$langfile = 'zh-tw';
break;
default:
$langfile = 'zh-cn';
break;
}

直接是取得瀏覽器的語系宣告參數來判斷。(當然各國的國別碼你要去找。我這只是簡繁)
由上面的變數來處理的話就會很簡單做到。
 
顶部 底部