创建Twig自定义功能-星级评级


Creating Twig custom function - star rating

我想创建一个简单的星级评定函数。

我想在Twig模板{{ star (9) }}中编写,它应该显示图像(或图像)和文本评级(9/10)。

将变量传递给我在控制器中使用的Twig:

$this->get('twig')->addGlobal('current_url',  $this->currentUrl);

,它工作得很好

所以在同一个控制器中,我使用代码:

    $function = new 'Twig_SimpleFunction('star', function () {
        echo "test";
    });
    $this->get('twig')->addFunction($function);

和在Twig模板我使用:

{{ star }}

显示它。但它根本不起作用(没有错误,但也没有结果)。

问题:应该如何编写才能使其工作?还有,有没有可能这个函数我给Twig赋了一些变量然后简单地包含另一个Twig文件在这个文件中星星会被循环创建?

我是Symfony初学者。我看到了如何创建symfony树枝滤镜?但对我来说,目前它太复杂了——如果可能的话,我不想创建新的服务/类等等,而是创建简单的函数。

这是一个函数,所以应该是

{{ star() }}