2017-01-24 13 views
3

Пытается вывести индекс # массива в ветке, не имея проблем с его поиском в документах. Кто-нибудь знает, как это получить?Получить индекс # массива в твине

array(2) { 
    [0]=> 
    array(2) { 
    ["testimonial"]=> 
    string(18) "Derby Heist Test 1" 
    ["author"]=> 
    string(6) "test 1" 
    } 
    [1]=> 
    array(2) { 
    ["testimonial"]=> 
    string(18) "Derby Heist Test 2" 
    ["author"]=> 
    string(6) "test 2" 
    } 
} 

поэтому я хотел бы выводить индексные числа 0 и 1 в цикл for. Пожалуйста помоги.

+0

Возможного дубликат [Twig для цикла и массива с ключом] (http://stackoverflow.com/questions/10299202/twig-for-loop-and-array -with-key) – HPierce

ответ

4

Вы можете использовать The loop variable в качестве примера:

{% for user in users %} 
    {{ loop.index }} - {{ user.username }} 
{% endfor %} 

loop.index текущей итерации цикла. (1 проиндексировано)

loop.index0 Текущая итерация цикла. (0 индексируются)

Надеется, что это поможет

+1

loop.index0 отлично работает –

+0

Привет @BrendanJackson вы уверены, что приняли правильный ответ на ваш вопрос? Я понимаю, что правильным ответом был «loop.index0». Очевидно, это не проблема :) – Matteo

2

Просто Foreach через основной массив, и вы хотите задать индекс:

foreach($array as $index=>$arr) { ... 

$ индекс теперь даст вам то, что вам нужно.

Или через веточку:

{% for key,value in array_path %} 
    Key : {{ key }} 
    Value : {{ value }} 
{% endfor %} 
+0

Я не думаю, что это так, как веточка. –

+0

Его просто обычный php-массив не забывает (на основе var_dump, который вы показали в качестве примера) - попробуйте, вы можете быть приятно удивлены. - Я обновил свой ответ, чтобы показать, как получить доступ с помощью шаблонов твинов. – Stuart

+1

Это должен быть принятый ответ. Хотя версия Matteos будет работать в MOST раз, она не даст правильных результатов для массивов с отверстиями в них. –

 Смежные вопросы

  • Нет связанных вопросов^_^