Page 1 sur 1

Limiter les valeurs possibles d'une variable

Posté : 11 juin 2010, 15:06
par Gregounet
Bonjour à tous!

Ayant fouillé un peu dans la phpdoc et dans mon livre de PHP, je ne trouve pas une réponse simple au problème suivant:

Comment limiter les valeurs que peuvent prendre des variables?

Par exemple, j'ai un objet "Personne" et un attribut "Type". Je souhaiterais que cet attribut ne puisse prendre que les valeurs "client" et "guide" et, le cas échéant, que cela me fasse une erreur si j'entre par exemple "participant"..

Pour l'instant, j'ai fait:
public function setType() {
if ($typeRecu != 'client' || $typeRecu != 'guide') {
    throw new Exception('Mauvaise valeur');
}
else {
   $this->type = $typeRecu;
}

}
Ca fonctionne, mais il n'y a pas un moyen plus simple et plus "propre" ?

Merci d'avance :)

Re: Limiter les valeurs possibles d'une variable

Posté : 11 juin 2010, 15:50
par macgawel
Bonjour.

Pour un cas de ce genre, utilise un tableau :
$TypesPossibles = Array ('client', 'guide');
//...
if ( in_array ($typerecu, $types) !== true ) {
   echo 'Mauvaise valeur';
}
else {
   $this->type = $typeRecu;
}

Re: Limiter les valeurs possibles d'une variable

Posté : 11 juin 2010, 17:03
par Gregounet
Merci beaucoup de ton aide!

J'applique immédiatement ton code,
bonne soirée!