Diskuze: Volanie metody controllera na základe $_GET
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 8 zpráv z 8.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Ahoj, můžeš to zavolat jednoduše přímo
$methodName = $_GET["action"];
$myController->$methodName(... parametry);
nebo skrze call_user_func_array().
$methodName = $_GET["action"];
call_user_func_array(array($myController, $methodName), array(... parametry));
Edit: Ten druhý způsob je fajn, když máš pole těch parametrů, tzn.
nevíš předem přesně, kolik jich bude. V prvním případě je to klasické
volání, tedy každý parametr musíš vypsat ručně. V druhém případě
můžeš mít parametry v poli a ta funkce call_user_func_array
je
předá té metodě.
Podle ITNetwork nemám dostatečný skill na hodnocení komentářů, tak to
aspoň napíšu textem - není zač
Ja bych predevsim ve funkci nepracoval s $_GET ale $_get nebo $get, $req, treba.
Martin Konečný (pavelco1998) - je treba udelat si tady test na php.
Rozdil je ve zpusobu uvazovani. Je treba se vyhnout pouzivaji globalnich promennych.
Zobrazeno 8 zpráv z 8.