Page 1 sur 1
Recuperer la valeur d'une variable
Posté : 07 mars 2013, 02:52
par rimie
Bonjour,
J'ai une class de verification de la date de naissance valid ou non, je mets une variable "day_check" selon les cas, comment puis-je recuprer cette valeur lors de l'appel de ma class, la mettre dans une variable sans l'afficher?
public function checkDay() {
if(empty($this->day) OR ($this->day > 31))
{
$day_check = 'DayNotValid';
}
elseif(($this->day > 29) && ($this->month == 02))
{
$day_check = 'Daybad29';
}
else
{
$day_check = 'DayValid';
}
$this->day_check = $day_check;
echo 'check day '.$this->day_check.'<br />';
} // end function checkDay($this->day)
// ici la recuperer et la mettre en variable
// $x = la valeur de day_check
merci a vous
Re: Recuperer la valeur d'une variable
Posté : 07 mars 2013, 10:06
par zeus
Modération :
Afin d'obtenir plus de réponses, le sujet a été déplacé dans un forum plus approprié.
Re: Recuperer la valeur d'une variable
Posté : 07 mars 2013, 12:52
par yann18
bonjour,
à mon avis tu as 2 possibilités pour récuper la variable:
1/la méthode checkDay() doit retourner la variable $day_check:
public function checkDay() {
//.....
return $day_check;
}
pour la mettre dans une variable lors de l'appel de classe:
$var=$class->checkDay();
2/l'autre possibilité est de declarer $day_chek comme attribut de la classe et lui définir un getter et un setter.Puis à l’intérieur de la méthode checkDay() faire appel à setDayCheck pour affecter la nouvelle variable(selon ou non la validité de la date).à l’extérieur de la classe on appelle directement getDaych() pour récupérer la valeur.
Re: Recuperer la valeur d'une variable
Posté : 08 mars 2013, 17:02
par rimie
merci yann18 ca marche

Re: Recuperer la valeur d'une variable
Posté : 09 mars 2013, 09:55
par rimie
desole de retourner sur le meme sujet, j'ai cree une autre fonction de vaidation du mois:
public function checkDay() {
if(empty($this->day) OR ($this->day > 31))
{
$day_check = 'DayNotValid';
}
elseif(($this->day > 29) && ($this->month == 02))
{
$day_check = 'Daybad29';
}
else
{
$day_check = 'DayValid';
}
$this->day_check = $day_check;
echo 'check day '.$this->day_check.'<br />';
} // end function checkDay($this->day)
// check the month
public function checkMonth() {
echo $this->day;
if(($this->day > 30) && (!in_array($this->month, $this->mw31d)))
{
$month_check = 'Monthbad31';
}
else
{
$month_check = 'MonthValid';
}
$this->month_check = $month_check;
return $this->month_check;
} // end function checkMonth($this->month)
et je recois cette erreur:
Code : Tout sélectionner
PHP Catchable fatal error: Object of class DOBD could not be converted to string in class_checkDOBD.php on line 54
la ligne 54:
echo $this->day;
dans ce cas je peux verifier si un mois peut contenir 31 jours ou non
merci a vous
Re: Recuperer la valeur d'une variable
Posté : 09 mars 2013, 12:41
par Perine
Et quel est le type de $this->day?
D'ailleurs je te conseille de ne pas écrire 02 pour dire 2. 02 est une notation en base 8 et non pas en base 10. Que ça marche dans ton cas, est un hasard, car entre 0 et 7, la base 8 correspond à la base 10.
echo 010; // 8
Si tu veux un nombre en base 10, ne mets pas de 0 devant.
Re: Recuperer la valeur d'une variable
Posté : 09 mars 2013, 16:49
par rimie
$this->day ici c'est un objet,on doit le convertir en string, en local ca marche, mais sur le serveur ca marche pas
Re: Recuperer la valeur d'une variable
Posté : 09 mars 2013, 17:54
par Perine
Faut-il vraiment te tirer les vers du nez ? Quoi comme objet ? Comment se fait-il que tu compares un objet avec un nombre ? La classe en question implémente-elle __toString() ?

Re: Recuperer la valeur d'une variable
Posté : 10 mars 2013, 15:45
par rimie
Comment l'implementer ici:
public function checkDay() {
}
public function __toString()
{
return $this->day;
}
public function checkMonth() {
elseif(($this->day > 30) && (!in_array($this->month, $this->mw31d)))
}
au lieu de this-day comment implementer ma fonction __toString