EDIT: Je viens de mettre au point ce que vous essayiez de demander ... ah eh bien ... laisserai mes commentaires de toute façon. Vous pouvez remplacer les noms des classes et des méthodes avec des variables si vous voulez .. (mais vous êtes fou) - nick
Pour appeler une fonction à partir d'une classe, vous pouvez le faire de deux façons ...
Soit vous pouvez créer une instance de la classe, puis l'appeler. .: par exemple
$bla = new Blahh_class();
$bla->do_something();
ou ... vous pouvez appeler la fonction statique .. dire sans instance de la classe. par exemple.:
Blahh_class::do_something()
Bien sûr, vous ne devez déclarer que votre fonction est statique:
class Blahh_class {
public static function do_something(){
echo 'I am doing something';
}
}
Si une classe est pas définie comme statique, vous devez créer une instance de l'objet .. (donc l'objet a besoin d'un constructeur) par exemple:
class Blahh_class {
$some_value;
public function __construct($data) {
$this->$some_value = $data;
}
public function do_something() {
echo $this->some_value;
}
}
la chose importante à retenir est que les fonctions statiques de classe ne peuvent pas utiliser $this
car il n'y a pas d'exemple des clas s. (Ce qui est l'une des raisons pour lesquelles ils vont beaucoup plus vite.)
Et ceux-ci: http://stackoverflow.com/questions/251485/dynamic-class-method-invocation-in-php –