使用zend框架将英语翻译成其他语言


Translating English to other language using zend framework

我是Zend框架的初学者。

我有一个简单的小web应用程序,这是在英语语言。我想把它翻译成印地语。我提到了Zend_Translate,但我无法理解它是如何工作的,有人能帮助我吗?我不知道zend_translate…请给我一个控制器,引导和形式代码翻译一个简单的英文字符串印地语…

Zend_Translate是一个用于本地化的组件,该组件使您能够以一些不同的格式(XML, PHP, CSV, gettext)存储不同的翻译字符串。加载翻译后的内容后,可以使用该组件在视图中显示翻译后的部分。

下面是一个从手册

中摘录的例子
$translate = new Zend_Translate(
    array(
        'adapter' => 'gettext',
        'content' => '/my/path/source-de.mo',
        'locale'  => 'de'
    )
);
$translate->addTranslation(
    array(
        'content' => '/path/to/translation/fr-source.mo',
        'locale'  => 'fr'
    )
);
print $translate->_("Example") . "'n";
print "======='n";
print $translate->_("Here is line one") . "'n";
printf($translate->_("Today is the %1'$s") . "'n", date('d.m.Y'));
print "'n";
$translate->setLocale('fr');
print $translate->_("Here is line two") . "'n";

您必须执行的步骤取决于您选择的适配器(例如gettext需要使用.po文件编辑器(Poedit))。

通常你必须:

    1)选择并配置一个可用的适配器。
    2)将你想要翻译的所有文本放入翻译函数中,如RageZ帖子所示(然而有些源是自动翻译的,例如:如果你有Zend_Form类的函数setLabel()你不必调用额外的翻译函数- Zend_Form与Zend_Translate集成在一起)
    3)提供翻译后的数据(数据格式取决于所选择的适配器)

在我看来,zendframework.com上关于Zend_Translate的文档非常好,并且应该能够根据参考指南中的信息开始使用翻译。