Page 1 sur 1

Alterner couleur des lignes d'un tableau

Posté : 19 juil. 2007, 13:45
par béka
Bonjour,

j'ai trouvé ce code
bgcolor='".( ($i++ % 2 == 0) ? '#FFFFFF' : '#EEEEEE' )."'
a mettre dans ma balise <tr> de mon tableau afin d'alterner les couleurs des différentes lignes du tableau.
Ce code est placé dans une boucle foreach.
Il marche très bien mais quelqu'un pourrait-il me l'expliquer car ca me dérange un peu de mettre un petit bout de code que je ne comprends pas.

Merci beaucoup.

Re: Alterner couleur des lignes d'un tableau

Posté : 19 juil. 2007, 13:58
par d0m
le but du jeu est d'alterner les couleurs donc donner une couleur aux lignes paires et une autre aux lignes impaires.

$i est le compteur de lignes.
bgcolor='".( ($i++ % 2 == 0) ? '#FFFFFF' : '#EEEEEE' )."'
cette ligne est équivalente à
if($i++ % 2 == 0)//la ligne est paire
   bgcolor='#FFFFFF';//on donne la couleur 1
else//la ligne est impaire
   bgcolor='#EEEEEE';//on donne la couleur 2

Posté : 19 juil. 2007, 14:12
par béka
ok d'accord, donc les : correspondent au else et ce qui suit le ? correspond a ce qu'on fait si la condition est vrai. ? c'est ça ?

Posté : 19 juil. 2007, 14:16
par joachiim

Posté : 19 juil. 2007, 14:18
par Genova
C'est l'opérateur ternaire, un raccourcit. Mais ne l'utilise pas si tu n'en as pas besoin.

PS : tu as oublié les $ devant tes variables.

Posté : 19 juil. 2007, 14:18
par d0m

Posté : 19 juil. 2007, 14:18
par Sékiltoyai
$i++ c'est la postincrémentation : http://www.php.net/manual/fr/language.o ... rement.php
condition ? vrai : faux , c'est l'opérateur ternaire : http://www.php.net/manual/fr/language.o ... on.ternary
%, c'est l'opérateur modulo : http://www.php.net/manual/fr/language.o ... hmetic.php

Posté : 19 juil. 2007, 14:27
par béka
Ok, merci tout le monde.
@ Genova -> non je n'ai pas oublié les $ puisqu'il s'agit du bgcolor de ma balise <tr>