[精讚] [會員登入]
2406

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

你可能感興趣的文章

[CodeIgniter 3] 資料庫的使用方法整理2/2 CI3 承襲 CI2,有很多的builder class可以用,依各人的使用習慣,有人喜歡一堆sql字串,有人喜歡用helper

[PHP] IPv6檢查IP是否在某個網段內 mtachcidr6 要檢查IPv6是否在某個IPv6的網段內?

[PHP8] 使用autoload autoload+ namespace +use 到了php7之後,namespace和use越來越重要,此篇整理autoload和namespace、use的結合使用。

[PHP] 陣列新增資料及整理 在php陣列加入項目和重新整理陣列的方法

[phpmyadmin] 缺少 mcrypt 外掛,請檢查 PHP 設定 缺少 mcrypt 外掛,請檢查 PHP 設定,安裝php-mcrypt。

[Centos 6& 7] 安裝php-geoip php-geoip是PHP由domain、ip查詢城市國家資料非常強的函式

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

看懂DSUB DVI HDMI USB等各式影音接頭 看懂DSUB DVI HDMI等各式影音接頭

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

問問題 問問題其實內涵很深,我悟了很久才懂。 有人問題的目的並不一定是想要得到答案,有時只是純粹想問問題..