Simplifier 2 lignes

WRInaute impliqué
Bonjour,

Je me demande comment je pourrais simplifier ces 2 lignes de code sachant qu'il y a juste le nombre qui change.

Code:
  if (($special1[0] == 'currenthp' OR $special1[0] == 'currentmp' OR $special1[0] == 'currenttp') AND $special1[1] != 'total' AND $special1[1] < 0) { $errors++; $errorlist .= "- L'attribut 1 doit être positif.<br>"; }
		  if (($special2[0] == 'currenthp' OR $special2[0] == 'currentmp' OR $special2[0] == 'currenttp') AND $special2[1] != 'total' AND $special2[1] < 0) { $errors++; $errorlist .= "- L'attribut 2 doit être positif.<br>"; }

Pouvez vous m'aider ?

Merci
 
WRInaute accro
Un tableau à deux dimensions... Au lieu d'utiliser $special1 et $special2, tu utilises un seul tableau $special, et tu mets les choses dans $special[1][0] au lieu de $special1[0] etc. Ca t'oblige à modifier la façon dont les tableaux sont construits et accédés partout ailleurs dans ton code, évidemment.

Jacques.
 
WRInaute accro
Ben à condition que tu aies bien mis les valeurs $special[1][0] etc. au lieu de $special1[0] etc, tu peux alors créer une fonction qui va faire ça:

Code:
if (($special[$i][0] == 'currenthp' OR $special[$i][0] == 'currentmp' OR $special[$i][0] == 'currenttp') AND $special[$i][1] != 'total' AND $special[$i][1] < 0) { $errors++; $errorlist .= "- L'attribut ".$i." doit être positif.<br>"; }

Jacques.
 
Discussions similaires
Haut