Zend Framework 入門(2)——多國語言支援

日期:2008-07-02  作者:喜騰小二  來源:PHPChina


如果妳的項目想要支援多語言版本,那麼就需要用到 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. 檢視页面

這時,浏覽器中看到的應是“妳好!”。

<<<返回技術中心

技術文章

站內新聞

我要啦免费统计