Osztályhívás dinamikusan
Egy form adatokat küld egy php-nek. A formot egy osztály generálja le, ami ellátja a POST adatok feldolgozását is igény esetén.
Akarok csinálni egy handler tömböt, ami megfelelően megformázott POST paraméterek alapján meghívja a megfelelő osztály handler függvényét.
Azaz pl.Akkor én annak megfelelően, hogy van-e regisztrálva az osztályok között loginhandler, meg szeretném hívni az ő handler függvényét.
Tehát valami olyat csinálnék, hogyDe ez ugye hibát ír.
Hogyan közelíthetném meg a problémát máshogy?
(tegyük fel, hogy 200 objektum kezelését kellene beregisztrálnom a handler-láncba, és if-then-else nem túl barátságos)
■ Akarok csinálni egy handler tömböt, ami megfelelően megformázott POST paraméterek alapján meghívja a megfelelő osztály handler függvényét.
Azaz pl.
<input type='hidden' name='handler' value='loginhandler'>
Tehát valami olyat csinálnék, hogy
$_POST['handler']::handleparams($_POST);
Hogyan közelíthetném meg a problémát máshogy?
(tegyük fel, hogy 200 objektum kezelését kellene beregisztrálnom a handler-láncba, és if-then-else nem túl barátságos)
Igy
$object = new $class();
$object->handleparams($_POST);
Ha ragaszkodsz a statikus fuggvenyhez:
call_user_func(array($class, "handleparams"), $_POST);
Ugye az csak peldat szemleltet, es nagyon-nagyon alaposan ellenorzod ennek a post valtozonak az erteket?
Igen
igen, csak szemléltettem, előtte át fog menni egy szűrőn.
Utóbbi olyan, mintha :: -val hivnám meg a függvényt? (tehát nem példányosítom az osztályt)
Én így értelmezem a 'statikust'.
Jah