所以我必须更改一个在Zend框架上编写的网站。我下载了源文件,想在本地运行网站。但我一直收到这个错误'没有注册密钥'Zend_Translate'。我没有使用Zend框架的经验,所以我真的不知道现在的问题是什么。有人可以帮忙吗?
答案 0 :(得分:1)
您的申请需要翻译,并且需要在注册表中进行链接。基本上你需要添加Transaltor(如果它还没有添加):
//Bootstrap.php
$locale = new Zend_Locale('en_GB'); //current locale
Zend_Registry::set('Zend_Locale', $locale); //this is optional but better to add this
$translate = new Zend_Translate(array('adapter' => 'tmx',
'content' => APPLICATION_PATH . '/configs/translations.tmx',
'locale' => $locale));
Zend_Registry::set('Zend_Translate', $translator); //here you add translator to registry
在这种情况下,翻译文件是translations.tmx
,其语法如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tmx SYSTEM "tmx14.dtd">
<tmx version="1.4">
<body>
<tu tuid='ADD_BASKET'>
<tuv xml:lang="pl_PL"><seg>Dodaj do koszyka</seg></tuv>
<tuv xml:lang="en_GB">Add to basket<seg></seg></tuv>
</tu>
<tu tuid='RECRIUT'>
<tuv xml:lang="pl_PL"><seg>rekrutacja</seg></tuv>
<tuv xml:lang="en_GB"><seg>recruit</seg></tuv>
</tu>
</body>
</tmx>
如果需要,Zend支持少数其他翻译文件格式的接口。