Нумерация элементов в smarty

406
14 июля 2017, 02:47

Здравствуйте. Подскажите, как мне пронумеровать в smarty(v2) класс каждой

  • в зависимости от количества элементов ?

    <ul>
       <li class="1">
       <li class="2">
       <li class="3">
       <li class="4">
    <ul>
    
  • Answer 1
    <ul>
    {foreach from=$myArray key=k item=v}
       <li class="{$k}">: {$v}</li>
    {/foreach}
    </ul>
    
    Answer 2

    циклы foreach в smarty имеют свойства index и iteration, первое из которых определяет индекс элемента массива, начиная с нуля. Второе - счетчик итераций, начиная с 1.
    Для использования свойств в smarty-2 необходимо поименовать цикл с использованием атрибута name.
    Таким образом, вывод номеров элементов цикла (вне зависимости от формы массива) будет иметь следующий вид:

    <ul>
    {foreach from=$items item=i name=foo}
        <li class="{$smarty.foreach.foo.iteration}">{$i}</li>
    {/foreach} 
    </ul>
    

    В Smarty-3 все куда удобнее:

    <ul>
    {foreach $items as $i}
        <li class="{$i@iteration}">{$i}</li>
    {/foreach} 
    </ul>   
    
    READ ALSO
    Как перевести число в другое значение?

    Как перевести число в другое значение?

    Есть числовые значения рейтинга от 0 до 10Числа рейтинга имеют одно число после точки, то есть могут быть числа 4

    358
    Замена пустого массива текстом PHP

    Замена пустого массива текстом PHP

    есть цикл, который выводит данные о пользователях из БД

    302
    Браузер перекрывает стили,что делать?

    Браузер перекрывает стили,что делать?

    Браузер перекрывает стилиЯ начинаю прописывать одно,второе

    340
    Не срабатывает код php

    Не срабатывает код php

    Доброго времени суток! Только начал изучать php, и столкнулся с следующей проблемой: Имеется файл loginhtml:

    284