2012-09-17 99 views
1

可能重複:
Simplest way to detect client locale in PHP顯示網頁根據國家

我在我的代碼使用PHP。我想知道是否有任何方法顯示根據特定國家/地區的內容。

例如 - 網頁顯示一個國家的人的平均身高。

所以我想,如果從美國的任何人連接到網站,他們得到的結果爲:

美國人民的平均高度爲6.5英尺。

假設來自中國的人連接,那麼他應該得到:

中國人民的平均高度爲5,4英尺。

+0

請看看:http://stackoverflow.com/questions/297542/simplest-way-to-detect-client-locale-in-php – Jelmer

回答

0

您既可以查看HTML5地理位置api,也可以從這些調用中獲取電話線,並查看它們屬於哪個國家/地區,例如geonames api。不過,還有其他位置的API也可能更適合。

一個短得多但不太精確的解決方案是查看瀏覽器的接受語言信息。它有一個帶有語言代碼的數組,這個瀏覽器的首選語言是從左邊排序的。據我所知,如果瀏覽器設置沒有被篡改,Accept-Language也會受到OS語言的影響。

確切的語法來獲取信息,從語言不同語言,PHP的是:

$_SERVER['HTTP_ACCEPT_LANGUAGE']; 

然後,它是由你來解析字符串/數組,並使用該信息顯示正確的頁面。