來源:互聯網
上載者:User
關鍵字
Zend Framework 入門(2)—多國語言支援
如果你的項目想要支援多語言版本,那麼就需要用到 Zend_Translate。Zend_Translate 的詳細文檔在這裡,不過如果想偷懶的話,也很簡單,在View Helpers 文檔中介紹了如何用 Translate Helper 輕鬆實現多語言支援。
1. 準備翻譯檔案
Zend_Translate 支援多種格式的翻譯檔案。選用何種格式可以參考這裡。如果條目不是很多(5000條以下),那麼可以考慮用最直觀的數組格式,而且可以寫到一個 php 檔案裡。假設,我們需要一個中文版支援,翻譯檔案命名為 zh_cn.php,放在與 application 平行的 languages 檔案夾裡。該檔案內容如下:
return array(
'hello_world' => '你好!',
);
2. 載入翻譯檔案
編輯 html/index.php 檔案,在前端控制器運行之前,插入下面的代碼:
require_once 'Zend/Registry.php';
require_once 'Zend/Translate.php';
$adapter = new Zend_Translate('array', $rootPath . '/languages/zh_cn.php', 'zh');
Zend_Registry::set('Zend_Translate', $adapter);
上述代碼的作用是載入 zh_cn.php,並把它儲存成全域變數。Zend_Registry 可以看成是一個全域變數容器。
注意:在儲存到 Zend_Registry 中時,索引值必須是 Zend_Translate,否則,得不到應有的結果。
3. 在視圖中使用翻譯條目
編輯 application/views/scripts/index/index.phtml 檔案,將原來的“
Hello World!
”替換成:
translate('hello_world'); ?>
4. 查看頁面
這時,瀏覽器中看到的應是“你好!”。