0
我能够使用伏模板在Phalcon中添加多语言支持。Phalcon PHP NativeArray使用Volt模板访问多维数组
但我不能以伏特形式访问phalcon多维NativeArray。
这里是我的getTranslation功能:
private function _getTranslation()
{
global $config;
if (isset($config[$_SERVER['HTTP_HOST']]['language'])) {
$language = $config[$_SERVER['HTTP_HOST']]['language'];
} else if ($this->session->get('auth')) {
$language = "pt";
} else {
//Ask browser what is the best language
$language = $this->request->getBestLanguage();
}
//Check if we have a translation file for that lang
if (file_exists(__DIR__ . "/../translations/".$language.".php")) {
require __DIR__ . "/../translations/".$language.".php";
} else {
// fallback to some default
require __DIR__ . "/../translations/en-US.php";
}
//Return a translation object
return new \Phalcon\Translate\Adapter\NativeArray(array(
"content" => $messages
));
}
然后我SETVAR:
$this->view->setVar("t", $this->_getTranslation());
这将是这样的加载翻译文件:
$messages = array(
"pages" => array(
"index" => array(
"title" => "CREATE YOUR ACCOUNT TODAY",
"call_to_action" => "Join Now!",
"search_title" => "Find:",
"search_option" => "I Want To:",
"search_type" => "Type:",
"search_where" => "Located On:",
"search_button" => "GO",
)
);
在伏模板我想访问像
$t['pages']['index']['call_to_action']
其中在伏可能是:
<div class="call_to_action">{{ t._('pages').('index').('call_to_action') }}</div>
但是,这并不工作!
有什么方法可以访问伏特模板中的NativeArray多维元素?
实际上只使用{{T [ '页'] [ '索引'] ['call_to_action']}}工作!谢谢Raj – erocha 2014-12-06 04:28:05