建設(shè)網(wǎng)站應(yīng)用字符集的選擇
一個定位于不同語言國家的企業(yè)網(wǎng)站勢必需要提供多種語言版本的產(chǎn)品和銷售信息來滿足其世界各地使用不同語言的客戶和合作伙伴,其中包括法語、德語、意大利語、葡萄牙語、西班牙語、阿拉伯語等等。但有一個問題卻極易被網(wǎng)站設(shè)計者們所忽略。這就是網(wǎng)站的字符集設(shè)置問題。
一般我們使用的是簡體中文(GB2312)字符集,而對多語言網(wǎng)站來說,中文字符集卻可能會使你辛辛苦苦的努力功虧一簣。原因很簡單:就是這個毫不起眼的小小字符集在作怪。
計算機應(yīng)用領(lǐng)域中存在著幾十種互不相同的字符集,而不同語言客戶在瀏覽不同語言網(wǎng)站時,往往會因為相互間所使用字符集無法兼容而出現(xiàn)亂碼情況。我們在瀏覽國外一些網(wǎng)站時,往往也會出現(xiàn)為了能正常地看到網(wǎng)站上的信息而不得不在各種字符集之間來回切換的情況。
試想一下:如果一個網(wǎng)站提供了中,英,法,德等多種語言版本的內(nèi)容,內(nèi)容全之又全,設(shè)計美侖美奐。我們在中文編碼環(huán)境下瀏覽這些非中文版本的頁面覺得非 常完美,現(xiàn)在一個法國客戶對你的產(chǎn)品發(fā)生了興趣,當他進到法語版面一看—亂碼多多,甚至可能整個版面都一塌里糊涂。你的網(wǎng)站再下大工夫又有什么意義呢?
所以對提供了多語言版本的網(wǎng)站建設(shè)公司來說,Unicode字符集應(yīng)該是最理想的選擇。它是一種雙字節(jié)編碼機制的字符集,不管是東方文字還是西方文字,在 Unicode中一律用兩個字節(jié)來表示,因而至少可以定義65536個不同的字符,幾乎可以涵蓋世界上目前所有通用的語言的每一種字符。所以在設(shè)計和開發(fā) 多語言網(wǎng)站時,一定要注意先把非中文頁面的字符集定義為“utf-8”格式。
這一步非常重要,原因在于若等頁面做好之后再更改字符集設(shè)置,可說是一件非常非常吃力不討好的工作,有時候甚至可能需要從頭再來,重新輸入網(wǎng)站的文字內(nèi)容。
HTML中的META標簽:
不寫,根據(jù)瀏覽器默認字符集顯示
charset=gb2312 簡體中文
charset=big5 繁體中文
charset=EUC_KR 韓語
charset=Shift_JIS 或 EUC_JP 日語
charset= KOI8-R / Windows-1251 俄語
charset=iso-8859-1 西歐語系(荷蘭語,英語,法語,德語,意大利語,挪威語,葡萄牙語,瑞士語.等十八種語言)charset=iso-8859-2 中歐語系
charset=iso-8859-5 斯拉夫語系(保加利亞語,Byelorussian語,馬其頓語,俄語,塞爾維亞語,烏克蘭語等)
charset=uft-8 unicode多語言
PHP與腳本引擎頁碼的概念
由于我們傳統(tǒng)使用的內(nèi)碼像Big5,GB2312與unicode并不是一一對應(yīng),故兩者之間的轉(zhuǎn)換要靠codepage(頁碼)來實現(xiàn)
不寫,根據(jù)服務(wù)器端解析引擎默認代碼頁自動解析并返回瀏覽器。
如果制作的網(wǎng)站腳本與WEB服務(wù)端的默認代碼頁不同,則必須指明代碼頁:
codepage=936 簡體中文GBK
codepage=950 繁體中文BIG5
codepage=437 美國/加拿大英語
codepage=932 日文
codepage=949 韓文
codepage=866 俄文
codepage=65001 unicode UFT-8