Hey,

Ik heb het volgende probleem

Ik heb
$actie = "login"

nu wil ik $loginController->login() aanroepen.

Dus de functie dmv de variabele aanroepen.

Heeft iemand enig idee hoe ik dit voor elkaar krijg?

Ik wil iets als $loginController->$actie()
Lees dit eens, volgens mij is dit wat je zoekt.
Let wel op dat dit bad practice is, want je verliest alle controle over wat gebeurt... Waarschijnlijk heb je meer aan een [php]switch[/php].
Op de een of ander manier werkt dit niet wanneer het binnen een classe valt

Dus wanneer ik het moet aanroepen met $this->login() ipv $login()
<?php
class nc{

public function donow(){
echo 'blaat';
}

public function trythis(){
$type = $this;
$func = 'donow';
$type->$func();
$this->$func();

}
}

$a = new nc();
$a->trythis();
?>

deze echoed dus: blaatblaat
Alternatief: [php]call_user_func_array[/php]. En om te controleren of het wel goed gaat komen kan je [php]is_callable[/php] of [php]method_exists[/php] gebruiken.

Controle of de method bestaat plus afscherming via protected/public keywords is een redelijk veilig wanneer de method-naam door de gebruiker opgegeven is.

Reageren