[精讚] [會員登入]
2556

PHP判斷對方瀏覽器語系

多語系的網頁應該主動偵查瀏覽器的語系,配合使用者跳出合適的語系。

分享此文連結 //n.sfs.tw/13556

分享連結 PHP判斷對方瀏覽器語系@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-22 06:03:08 最後編修
2019-10-01 09:44:53 By 張○○
 

自動目錄

多語系的網頁應該主動偵查使用者瀏覽器的語系,而不是被動的由使用者切換語系。

此篇參考[1]的說明,自己做個筆記。

檢查使用者瀏覽器的語系

PHP讀取系統變數

$_SERVER['HTTP_ACCEPT_LANGUAGE'];

zh-TW,zh;q=0.8,en-US;q=0.5,en;q=0.3

對照我FIREFOX中的設定

所以最優先的是zh-TW

 

PHP執行時判斷

引用[1]的程式碼,交給PHP執行時判斷

$supportedLangs = array('en-GB', 'fr', 'de');
$languages = explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
foreach($languages as $lang)
{
	if(in_array($lang, $supportedLangs))
	{
                // Set the page locale to the first supported language found 遇到第一個支援的語系
		$page->setLocale($lang);
                break;
	}
}

第9行設定你的網站語系,實際寫法由你的程式決定。

 

參考資料

[1] DZONE https://dzone.com/articles/automatically-detect-browser

END

你可能感興趣的文章

[PHP] 讀取作業系統程式執行結果 PHP讀取作業系統程式執行結果

[PHP+ci4] codeignitor4+ smarty5 這篇整合 php 的framework codeignitor4 + smarty5。

[PHP7] 利用Memcached 儲存 Session Memcached+ PHP7,利用Memcached 儲存 Session。

[PHP] preg_match 的貪婪和不貪婪比對 在php preg_match中預設是採用貪婪比對,太貪婪反而不符合需要,因此得採用「非貪婪比對」...

PHP 產生連續的日期 要用PHP產生連續的日期,連續月份

[PHP7] 讀取mysql資料庫的傳統方法 使用傳統預設的方法來連結mysql資料庫

隨機好文

NETCRAFT發現你的網站及作業系統 NETCRAFT可以發現你的網站及作業系統

[Wildfly10] 發佈war檔 deploy war file onto wildfly10

在Centos7 下安裝 Wildfly10 wildfly以前叫JBoss,2014.11.20改名叫Wildfly,起始版本是Wildfly8,現在已經出到Wil

[Centos6] 安裝wordpress Centos 6下安裝wordpress,非常簡單

兩次使用InnoDB的慘痛經驗 Mysql 的Innodb引擎雖然好用,但是我得說說我兩次的慘痛經驗,這讓我考慮以後可能不會再使用innodb了