Page 1 sur 1

If à rallonge .. comment puis-je faire plus propre ?

Posté : 01 févr. 2008, 12:12
par Sebe
Bonjour,

Je voudrais savoir comment je peux rendre plus présentable cette série de condition:
if ($affichage == '1') {
		echo '<tr bgcolor= "<?php echo $bgcolor;?>">';

		if (($course->publier == '1') && (($course->pat_chal == 'C') && (($class_Config['link_chal'] == '1') || ($class_Config['link_chal'] == '2'))) || (($course->pat_chal == 'P') && (($class_Config['link_pat'] == '1') || ($class_Config['link_pat'] == '2'))) || (($course->pat_chal == 'H') && (($class_Config['link_hors_chal'] == '1') || ($class_Config['link_hors_chal'] == '2')))){
		
		echo '<td><a href="' . $link . $id . '">' . $date . '</a></td>'
			. '<td><a href="' . $link . $id . '">' . $course->lieu . '</a></td>'
			. '<td><a href="' . $link . $id . '">' . $course->course . '</a></td>'
			. '<td><a href="' . $link . $id . '">' . $course->kilometrage . '</a></td>'
			. '<td><a href="' . $link . $id . '">' . $heure . '</a></td>'
			;			
		
			} else {
				echo '<td>' . $date . '</td>' 
					. '<td>' . $course->lieu . '</td>'
					. '<td>' . $course->course . '</td>'
					. '<td>' . $course->kilometrage . '</td>'
					. '<td>' . $heure . '</td>'
					;
				} // fin du if link
			echo '</tr>';
		} // fin if $affichage
Surtout le 2e if ... y-a-t-il un intérêt ?

Merci

Posté : 01 févr. 2008, 12:27
par d0m
déjà en séparant le code html pur du code PHP et en sautant des lignes et indentant tout simplement :
<?php
if ($affichage == '1') {?>
  <tr bgcolor= "<?php echo $bgcolor;?>">
<?php if ( ($course->publier == '1')
            && ( ($course->pat_chal == 'C')
                 && ( ($class_Config['link_chal'] == '1')
                      || ($class_Config['link_chal'] == '2')))
            || (($course->pat_chal == 'P').....
     {
     <td><a href="<?php echo $link . $id;?>"><?php echo $date;?></a></td>
  ....         

Posté : 01 févr. 2008, 12:43
par Sebe
Ok merci

Posté : 01 févr. 2008, 13:09
par Ryle
Tu as également beaucoup de parenthèses et d'apostrophes inutiles...

au lieu de
if (($course->publier == '1') && ...
tu pourrais écrire
if ( $course->publier == 1 && ...
Bon c'est du détail, mais quelques caractères de moins, ça fait aussi gagner en lisibilité :)

Posté : 01 févr. 2008, 14:02
par Sebe
Salut,
Bon c'est du détail, mais quelques caractères de moins, ça fait aussi gagner en lisibilité :)
Je pense que c'est dû à mon coté matheux ... je me suis toujours dit qu'il n'y en avait jamais assez pour éviter les erreurs en math :roll:

Merci