如何在symfony的twig中访问特定的数组?

时间:2015-03-19 05:12:49

标签: arrays symfony loops twig

我遇到了问题,我只想访问数组的特定位置,

让我说我有这个代码

{% set total = val.listCompanies|length%}
  {% if total > 1 %}
    <td>
      <button id="viewcompany" 
          type="button" 
          class="pop btn btn-info" 
          data-toggle="popover" 
          title="User Company List" 
          data-content='
            {% for key1, val1 in val.listCompanies %}
              <a href ="company/{{val1.CompanyId}}"> {{ val1.CompanyName }}<br> </a>
            {% endfor %}'
          data-placement="right"
          data-html = "true">
        see company
      </button>
    </td>
  {% endif %}
  {% if total < 2 %}
    <td>
      {% for key1, val1 in val.listCompanies %}
        <center>
          <a href ="company/{{val1.CompanyId}}"> {{ val1.CompanyName }}<br> </a>
        </center>
      {% endfor %}
    </td>
  {% endif %}

我想制作一个按钮,如果它里面只包含一个数组,我就不必使用弹出按钮,但是如果它里面有多个数组,那么我必须在里面显示它弹出按钮。

事情是我无法访问特定的数组,以添加更多的逻辑..

1 个答案:

答案 0 :(得分:0)

如果您的val.listCompanies包含数字键,则可以使用以下方法访问第一个:

val.listCompanies[0]

如果您的val.listCompanies已生成密钥并且您想要访问第一个密钥,则可以使用:

val.listCompanies|first

如果您的val.listCompanies已生成密钥并且您想要访问第N个密钥,则可以使用:

val.listCompanies|slice(n, 1)|first 

Working demo