我使用Phalcon和他的能力,通过他的班级翻译更容易翻译。到目前为止,我将t变量从索引传递到所有视图,就在我设置伏特时,就像这样:
$view = new View();
$view->setViewsDir(WEBSITE_PATH.'/views/');
// Return a translation object
$view->t = new Phalcon\Translate\Adapter\NativeArray([
"content" => $localization
]);
这是有效的,但我也有从页面文件夹视图中翻译的页面,在.php中,而不是.volt。 如何分享/设置/传递此变量' t'到其他地方?
答案 0 :(得分:1)
您可以在依赖注入器中注册翻译,如
$di->setShared('translations', function() use($di) {
// Include or set your translations here, must be an array
$translations = ['Phalcon' => 'Falcon', 'Word' => 'Translation'];
return new \Phalcon\Translate\Adapter\NativeArray(array(
'content' => $translations
));
});
然后你可以在任何控制器中调用翻译,比如
$this->translations->_('Phalcon')
和像
这样的观点<?=$this->translations->_('Word') ?>
进一步阅读:https://docs.phalconphp.com/en/latest/reference/translate.html