因爲如今網站上動態應用日益增多,至關多的網站還會使用文件或者數據庫來存儲應用信息,所以若是文件或者數據庫中存儲的內容與語言相關時,還須要特別注意。對於存儲在數據庫中信息,能夠採起如下幾種方式支持多語言:
1,在數據庫級別支持多語言:爲每種語言創建獨立的數據庫,不一樣語言的用戶操做不一樣的數據庫。
2,在表級別支持多語言:爲每種語言創建獨立的表,不一樣語言的用戶操做不一樣的表,可是它們在同一個數據庫中。
3,在字段級別支持多語言:在同一個表中爲每種語言創建獨立的字段,不一樣語言的用戶操做不一樣的字段,它們在同一個表中。
因爲數據庫中有大量的信息(如標誌,編碼,數字等)是用於內部處理使用的,與語言無關的,所以在數據庫級別支持多語言會致使空間的極大浪費,在字段級別支持多語言最大的問題是一旦須要支持新的語言,因爲須要修改表結構,維護起來很是麻煩,可擴展性很差。
相比之下,在表級別支持多語言比較好,由於並非全部的表都須要支持多語言,對於與語言無關的表,不一樣語言的用戶共用一套,那些和語言相關的表根據支 持語言的種類來創建,不一樣語言的用戶存取訪問不一樣的表格。這樣使得維護簡單,節省了存儲空間,即便是擴展起來也比較方便,只要把須要支持多語言的表,多建 立一套便可。
在設計和開發一個多語言版本的網站前,須要考慮下列因素:
一、應用字符集的選擇
一個定位於不一樣語言國家的企業網站勢必須要提供多種語言版本的產品和銷售信息來知足其世界各地使用不一樣語言的客戶和合做夥伴,其中包括法語、德語、意大利 語、葡萄牙語、西班牙語、阿拉伯語等等。但有一個問題卻極易被網站設計者們所忽略。這就是網站的字符集設置問題。
通常咱們使用的是簡體中文(GB2312)字符集,而對多語言網站來講,中文字符集卻可能會使你辛辛苦苦的努力功虧一簣。緣由很簡單:就是這個絕不起眼的小小字符集在做怪。
計算機應用領域中存在着幾十種互不相同的字符集,而不一樣語言客戶在瀏覽不一樣語言網頁時,每每會由於相互間所使用字符集沒法兼容而出現亂碼狀況。咱們在瀏覽國外一些網站時,每每也會出現爲了能正常地看到網站上的信息而不得不在各類字符集之間來回切換的狀況。
試想一下:若是一個網站提供了中,英,法,德等多種語言版本的內容,內容全之又全,設計美侖美奐。咱們在中文編碼環境下瀏覽這些非中文版本的頁面以爲很是 完美,如今一個法國客戶對你的產品發生了興趣,當他進到法語版面一看—亂碼多多,甚至可能整個版面都一塌裏糊塗。你的網站再下大工夫又有什麼意義呢?
因此對提供了多語言版本的網站來講,Unicode字符集應該是最理想的選擇。
它是一種雙字節編碼機制的字符集,不論是東方文字仍是西方文字,在Unicode中一概用兩個字節來表示,於是至少能夠定義65536個不一樣的字符,幾乎能夠涵蓋世界上目前全部通用的語言的每一種字符。因此在設計和開發多語言網站時,必定要注意先把非中文頁面的字符集定義爲「utf-8」格式,即:
√:
×:
這一步很是重要,緣由在於若等頁面作好以後再更改字符集設置,可說是一件很是很是吃力不討好的工做,有時候甚至可能須要從頭再來,從新輸入網站的文字內容。
二、語言書寫習慣&導航結構
有些國家的語言書寫習慣是從右到左,例如許多中東地區所使用的阿拉伯語,波斯語和希伯來語等等。若是你的市場目標是這些語言的國家,那麼在網站設計中就需 要考慮這些特殊的語言書寫習慣。並且若是你在網站導航結構設計中使用的是一個豎直導航欄,這時候就應該把它放在右邊,而不是象咱們習慣的那樣放在左邊了。
三、數據庫驅動型網站
對一個數據庫驅動型的網站,尤爲是當客戶能夠留言並向數據庫添加信息時,則應當考慮如何從技術上實現對不一樣語言數據信息的收集和檢索。
四、搜索引擎&市場推廣
對多語言網站來講,搜索引擎優化(SEO)確實是個大問題。並且還須要注意的是:並不是全部的主流搜索引擎都會支持多語言網頁,這也就是爲何一個多語言的網站不必定被全部的主流搜索引擎收錄。固然Google不存在這樣的問題。
其次須要考慮,不一樣語言所面向的不一樣市場目標國家和客戶羣體中習慣使用什麼搜索引擎或門戶網站進行搜索? 就象咱們習慣用土生土長的百度搜索同樣,在一些語言國家使用最爲普遍的可能仍然是其本國的搜索引擎或門戶網站。php
來源:http://www.phpstudio.info/show-97-86-1.htmlhtml