Php 如何从数组中包含细枝文件?

Php 如何从数组中包含细枝文件?,php,html,symfony,twig,Php,Html,Symfony,Twig,嗨,我如何将数组传递给细枝包含 {% set navbar_logo %}["{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"]{% endset %} {% include navbar_logo %} 这导致: Unable to find template "["@admin/components/co

嗨,我如何将数组传递给细枝包含

{% set navbar_logo %}["{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"]{% endset %}

{% include navbar_logo %}
这导致:

Unable to find template "["@admin/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"]"
这很好:

{% include ["{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"] %}
但我需要从变量中得到它

这也适用于:

 {% set navbar_logo %}{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig{% endset %}

{% include navbar_logo %}
但我需要备份,以防第一个不存在。
我该怎么做?

如果您使用的是
{%set..%}。。。{%endset%}
,Twig将变量视为字符串

您应该将代码切换到这个位置,然后它就可以工作了

{% set navbar_logo = [ sprinkle~"/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"] %}
那么:

{% set navbar_logo = include(sprinkle|raw ~ '/components/content/navbar/navbar-logo.html.twig') %}
我不知道你想要实现什么,但是更好的方法是在你的基本布局的一块中设置它

{% block navbar_logo %}
    {{ include(sprinkle|raw ~ '/components/content/navbar/navbar-logo.html.twig') }}
{% endblock %}
然后,当您以后需要转储徽标时,请使用
{{block('navbar_logo')}

更多关于