将gettext与smarty结合使用的最简单方法是什么,是否有类似于php中可用的功能:_('hello world');
?
谢谢,
答案 0 :(得分:4)
我确实发现Smarty对(n)gettext的支持也很缺乏。虽然现有的插件似乎做得很好,但我仍然认为我应该试一试。
我刚刚发布了:http://code.google.com/p/smarty-gettext/
也许这对任何人都有帮助。反馈等不仅仅是赞赏。
答案 1 :(得分:3)
看起来有一个smarty-gettext
插件可用:http://sourceforge.net/projects/smarty-gettext/,最后更新于2011年5月。http://smarty.incutio.com/?page=SmartyGettext
答案 2 :(得分:3)
有很多方法可以用Smarty实现页面的翻译。
我创建了一些包含以下内容的.conf
文件:
hello_world = "Hello! World!"
my_name_is = "They call me"
hello_world = "Hallo! Wereld!"
my_name_is = "Ik heet"
hello_world = "Bonjour! Tout le Monde!"
my_name_is = "Ils m'appellent"
现在您有两个选择:
.conf
文件中加载.tpl
文件:{config_load file="en.conf"}
<html>
<body>
<h1>{#hello_world#}</h1>
<p>
{#my_name_is#}
</p>
</body>
</html>
{config_load file="nl.conf"}
<html>
<body>
<h1>{#hello_world#}</h1>
<p>
{#my_name_is#}
</p>
</body>
</html>
$configFile = 'fr.conf';
// Smarty Version 2
$this->smarty->config_load($configFile);
//Smarty Version 3
$this->smarty->configLoad($configFile);
我希望这也适合你。
答案 3 :(得分:0)
您可以使用Smarty修改器功能,如下所述:https://blog.ueffing.net/post/2013/07/19/php-smarty-a-modifier-for-internationalization-tool-gettext/ (当然假定安装gettext)