2015-11-23 2 views
1

Я захватывая индекс для цикла и передачи его в макросTwig тип индекса в строке

{% for index, sectionForm in forms.sectionalCompletionTabForm.sections %} 

    {{ macros.projectSectionForm(sectionForm, index) }} 
{% endfor %} 

Я тогда хочет подсчитать с каждым индексом, конечно индекс начнет на 0, так что я нужно + 1 независимо от индекса.

{% macro projectSectionForm(form, index) %} 

{{ dump(index) }} 
{{ dump(index + 1) }} 

{% endmacro %} 

Проблема в том, что индекс возвращается как строка, например. «1», «2», «3», «4»

и всякий раз, когда I + 1 к нему, я всегда получаю 1, возможно, потому что он добавляет int и строку?

Я посмотрел он-лайн, и я не смог найти какой-либо метод toInt.

Мой вывод выглядит

"0" < < индекс
< индекс + 1
"1" < < индекс
< индекс + 1
"2"

ответ

1

http://twig.sensiolabs.org/doc/tags/for.html

Если вам не нужен индекс из массива, то вы можете использовать переменную loop.

loop.index и look.index0 индексируются и индексируются соответственно 0.

Эта переменная имеет область действия в пределах for loop.

+0

Большой ответ Спасибо за помощь! – jmack