i smarty şablon sayfasında şu formatta kayıtları listelemek istiyorum
1 3 5 ...
2 4 6 ...
there should be the ul
li 1
2
in this format
Her-diğer girişi atlamak için "adım" değiştirici kullanarak, iki kez dizi aracılığıyla bilmiş döngü var:
<ul>
{section name=index loop=$myList start=0 step=2}<li>{$myList[index]}</li>{/section}
</ul>
<ul>
{section name=index loop=$myList start=1 step=2}<li>{$myList[index]}</li>{/section}
</ul>
CSS display:block; width:50px;
veya display:inline-block
(tüm tarayıcılar "inline-block" destekleyen gerçi) ile bu birleştirin ve size istediğiniz görünümü almalısınız.
Afair HTML / CSS ne de Smarty düzeni bu tür başa çıkmak için herhangi bir işlevi sağlamaz, bu yüzden n / 2 listeleri oluşturmak zorundasınız ve her liste (inline-block eleman olarak görüntülenir gerekecektir korkuyorum CSS: display: inline-block;
).
$myList = array(1, 2, 3, 4, 5, 6);
$listsCount = ceil(count($myList) / 2);
for ($i = 0; $i < $listsCount; ++$i) {
echo 'UL';
for ($j = $i * 2; $j < $i * 2 + 2; ++$j) {
echo 'LI ' . $myList[$j] . '/LI';
}
echo '/UL';
}