在 Symfony2 树枝中显示拆分结果


Display split results in Symfony2 twig

我的Symfony控制器中有一个函数,它返回以下内容:测试+测试字符串 1+测试2

测试控制器.php

public function getResultAction($fileName) {
    $string1="test";
    $string2="testString1";
    $string3="test2";
    $response = $string1."+".$string2."+".$string3;
    return new Response($response);
}

在我的树枝中,我已经在我的控制器中渲染了函数:

测试.html.twig

{% set test %}
    {{ render(controller('TestBundle:Test:getResult')) }}|split('+', 4)
{% endset %}
{{ test[0] }}

我正在使用树枝拆分过滤器,以便我可以单独显示测试、测试字符串 1 和测试2但是每当我尝试显示 test[0] 时,我都会收到以下错误:

无法访问类">

Twig_Markup"对象上的键"0",该对象未在 TestBundle:Test:test.html.twig 中实现 ArrayAccess 接口

我正在做的事情有什么问题?我希望你能帮我解决这个问题。谢谢

您错过了双括号内的拆分过滤器,如下所示:

{% set test %}
    {{ render(controller('TestBundle:Test:getResult')) |split('+', 4) }}
{% endset %}

Hoveever似乎与set标签存在同样的问题。从文档中:

set标签也可用于"捕获"文本块

尝试:

{% 
   set test=render(controller('TestBundle:Test:getResult'))|split('+', 4)
%}

希望这个帮助