在树枝扩展中使用配置参数

jbs*_*und 5 symfony twig

我正在创建Twig扩展,因此我可以创建自定义过滤器和功能.我需要在'parameters.ini'文件中访问全局配置的参数.

我该怎么办呢?

gil*_*den 9

您可以通过依赖注入传递它们.通过构造函数传递参数或使用setter方法.此示例使用xml进行服务定义:

public class MyExtension extends \Twig_Extension
{
    protected $param;

    public function __construct($param)
    {
        $this->param = $param;
    }
}
Run Code Online (Sandbox Code Playgroud)
<!-- in services.xml -->
<service id="my_bundle.twig.extension.name" class="Acme\Bundle\DemoBundle\Twig\Extension\MyExtension">
    <argument>%my_parameter%</argument>
    <tag name="twig.extension" />
</service>
Run Code Online (Sandbox Code Playgroud)

请注意参数如何限制在百分比符号中.您可以从官方书籍中阅读有关依赖注入的更多信息.