Salut,

je rencontre un petit probleme sur l'OO de PHP de débutant().

j'essaie de setter dynamiquement des propriétés d'une classe de la façon suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
class Test
{
    protected $_foo = array("conditions" => "ALL", "criteria" => null );
    protected $_bar = array();
 
         public function setProperty($property,$key, $value)
	{
		if(!preg_match("/^_/", $property))
		{
			$property = "_{$property}";						
		}			
 
		if(isset($this->$property[$key]))
		{
			$this->$property[$key] = $value; //ne fonctionne pas
                        $this->_foo[$key] = $value; //fonctionne 
		}
		else
		{
			Throw new Exception("Undefined  properties".$property[$key]);
		}
 
	}
 
 
}
 
$test = new Test();
$test->setProperty("_foo","criteria","blablabla");
Lorsque j'essaie de setter dynamiquement une propriété, le fait de lui passer une variable devant this, il n'a pas l'air apprécier, mais il ne me renvoit pas d'erreur.

Je dois passer à coté de quelque chose mais je ne vois pas.

Merci d'avance de votre aide.