我正在编写一个完整的德语应用程序,因此需要基本上将所有内容设置为德语。
我的问题:将表单验证设置为德语的最佳和最简单的方法是什么?
我找到了 this page但无法弄清楚如何让这段代码工作:
Zend_Validate_Abstract::setDefaultTranslator($translate);
谁能给我一些如何使用它的建议?
编辑:
感谢@Gordon,我将以下内容放入我的 Application/Module.php 中:
use Zend\I18n\Translator\Translator;
use Zend\Validator\AbstractValidator;
class Module
{
public function onBootstrap(MvcEvent $e)
{
...
$translator = new Translator();
$translator->addTranslationFile(
'phpArray',
'resources/languages/de.php',
'default',
'de_DE'
);
AbstractValidator::setDefaultTranslator($translator);
...
}
编辑 2:
好吧,这很奇怪。当我设置 de_DE
时,我收到无法打开 de.php 文件的消息 - 这是真的,因为“de”是一个包含另外两个 PHP 文件的文件夹。
Could not open file resources/languages/de.php for reading
更改文件夹路径或其中任何现有文件的路径无济于事...
当我将“de_DE”更改为“de”或“de_de”时,什么也没有发生。没有错误和英文验证错误。有什么线索吗?
最佳答案
对我来说它适用于
public function onBootstrap(MvcEvent $e)
{
$translator=$e->getApplication()->getServiceManager()->get('translator');
$translator->addTranslationFile(
'phpArray',
'./vendor/zendframework/zendframework/resources/languages/it/Zend_Validate.php'
);
AbstractValidator::setDefaultTranslator($translator);
// \Zend\Debug\Debug::dump($application);
}
'./vendor/zendframework/zendframework/resources/languages/langfolderyouwant/Zend_Validate.php'
关于php - Zend Framework 2 - 翻译标准表单验证和错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13949240/