2010-10-31 3 views
0

Je souhaite que php imprime une classe sur chaque quatrième élément de liste. Est-ce possible?Générer une classe sur l'élément de liste

<ul> 
    <li>List-item 1</li> 
    <li>List-item 1</li> 
    <li>List-item</li> 
    <li class="new_class">List-item</li> 
    <li>List-item 1</li> 
    <li>List-item 1</li> 
    <li>List-item</li> 
    <li class="new_class">List-item</li> 
</ul> 
+0

Oui, il est possible. Quel code PHP utilisez-vous actuellement pour sortir les éléments de la liste? –

+0

Pouvez-vous influencer la fonction qui crée le balisage ou avez-vous besoin de lire dans le balisage, de le modifier et de le sortir à nouveau? – Gordon

Répondre

2

Dans votre boucle, itérer un index et if ($index % 4 == 0) { echo 'class="new_class"'; }

1
$items = array ('List-item 1', 'List-item 1', 'List-item', 'List-item', 'List-item 1', 'List-item 1', 'List-item', 'List-item'); 

printf("<ul>"); 

for ($index=0; $index < count($items); $index++) 
{ 
    if ($index%4 == 0) 
    { 
     $class = ' class="new_class"'; 
    } 
    else 
    { 
     $class = ''; 
    } 
    printf("<li%s>%s</li>", $class, $item[$index]); 
} 

printf("</ul>"); 
Questions connexes