使用变量外部视图phalcon

时间:2016-04-26 06:43:51

标签: php phalcon volt

我使用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'到其他地方?

1 个答案:

答案 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