小胡子php gettext()

时间:2011-05-20 21:33:10

标签: php templates web-applications kohana mustache


我正在尝试使用kostache,“kohana框架的胡子”。

有什么方法可以在胡子模板文件中使用简单的PHP函数 我知道逻辑,因此方法违反了无逻辑设计原则,但我说的是非常简单的功能。

例如:

  • gettext('some text')__('some text')
  • 获取基本网址;在kohana - > Url::site('controller/action')

3 个答案:

答案 0 :(得分:3)

Bobthecow正在开发一项实验性功能,可让您将函数称为回调函数。

查看存储库的higher-order-sections分支,然后the ticket继续使用它。

答案 1 :(得分:0)

您可以使用“ICanHaz”http://icanhazjs.com/

然后你可以将你的胡子模板声明为

<script id="welcome" type="text/html">
<p>Welcome, {{<?php echo __('some text') ?>}}! </p>
</script>

答案 2 :(得分:0)

嗯,你现在可以通过Bobthecow实现的Mustache引擎来实现这一点。我们需要匿名函数,它们与其他数据一起传递给模板对象。

看一下以下示例:

        **Original String**                          **Result**
             CMP                                 CMP Rs.
             Rs.

             Mar Cap                             Mar Cap Rs.Cr.
             Rs.Cr.

             Debt                                Debt Rs.Cr.
             Rs.Cr.

             # Shares                            #Shares C.
             Cr.

在上面的示例中,' bold_it '指向我们的函数,该函数与我们的模板中的其他数据一起使用。 “ fullname ”的值将作为参数传递给此函数。

请注意,在Mustache中,传递参数不是必需的。您甚至可以调用任何参数的php函数,如下所示:

<?php
$mustache = new Mustache_Engine;
# setting data for our template
$template_data = [
    'fullname' => 'HULK',
    'bold_it' => function($text){
        return "<b>{$text}</b>";
    }
];
# preparing and outputting
echo $mustache->render("{{#bold_it}}{{fullname}}{{/bold_it}} !", $template_data);

致谢:http://dwellupper.io/post/24/calling-php-functions-for-data-in-mustache-php