2010-04-28 38 views
3

今天我被一位面試官問到,我將如何將阿拉伯語作爲第二語言實現到PHP Web應用程序中。我談到了爲數據庫和前端選擇unicode編碼,以及設計RTL友好的用戶界面模塊。他對答案似乎並不滿意。我對多語言系統一無所知,你如何回答這個問題?多語言Web應用程序的設計注意事項

+0

這應該是一個社區維基。 – 2010-04-28 19:06:33

+0

是否使用數據庫選項? – 2010-05-12 14:57:25

+0

@親愛的 - 你告訴我。這是這個問題的關鍵。 – HyderA 2010-05-13 04:37:42

回答

10
  1. 確保您在網站上使用UTF-8編碼。即使這樣也不是萬無一失的,因爲提到了prakscant。
  2. 字符串 - 您需要對本地化每個可能出現給用戶的字符串和短語進行規範。這意味着錯誤消息,狀態欄消息,警報框,對話框等。您可以創建一個字符串映射或目錄列表,以便您通過鍵(可能是英文)查找字符串。
  3. 本地化圖像 - 如果您使用圖像按鈕(包含文本),那些也需要本地化。您可以創建一個圖像映射或目錄文件,讓您通過某個鍵找到相應文化的圖像。
  4. 佈局 - 由於阿拉伯語是從右到左,您可能需要有單獨的CSS文件來正確處理網站外觀,以便正確讀取和顯示文本。例如,您可能需要在屏幕右側而不是左側顯示側邊欄。
  5. 日期格式 - 您需要根據文化代碼格式化日期,並確保基於日期的過濾器得到正確解釋。
  6. 數據庫整理 - 您需要確保數據庫以UTF-8或Unicode格式存儲數據。除非這些字符串是阿拉伯用戶不可查看和不可更改的系統值,否則您還需要小心查詢字符串中的任何查詢內容。
0

使用UTF-8對所有:

php文件格式 - > UTF-8。

MySQL數據庫 - > UTF-8 Unicode。

1

非常重要的一點是,要讓靈活的語言管理器能夠靈活地加載特定於語言的字符串和設置。在PHP中,即使使用UTF-8文件格式,也要小心,因爲當前的PHP版本沒有完整的Unicode支持。在這裏你可以瞭解更多關於什麼是支持Unicode的發生:

http://schlueters.de/blog/archives/128-Future-of-PHP-6.html

你也有更多的問題需要解決:本地化的格式,整理 - 整理,多幣種和多邏輯時區。

0

不知道他們爲什麼不滿意你的答案。 所有文本的UTF-8 - 字符串/數據庫等 單獨的CSS(設置rtl文本屬性) 要考慮的其他事項...圖像也是rtl。所以如果你目前使用導航欄的圖像等,你必須認識到他們會加載rtl。
除此之外,阿拉伯語與其他任何語言一樣,唯一的區別是它是雙向的。