Automatyczne wywołanie konkretnej metody funkcji

2011-07-21 15:14
0

Witam,
mam pytanie, chciałbym zautomatyzować wykonywanie poszczególnych funkcji w klasie. Podam przykład:

class fTemplate {

       private $response = array(
        '001' => true,
        '002' => 'Błędne dane wejściowe, spodziewana tablica, otrzymano inne dane',
        '003' => 'Nie podano akcji'
    );

    public function action($act=null) {
        if($act==null) throw new Exception($this->response['003']);

        switch($act){
            case 'update': return $this->updateTemplate($id); break;
            case 'create': return $this->createTemplate($id); break;
            case 'delete': return $this->deleteTemplate($id); break;
            default: return false; break;
        }
    }

    private function updateTemplate($data = null) {
        //kod funkcji 
    }

    private function createTemplate($data = null) {
        //kod funkcji 
    }

    private function deleteTemplate($data = null) {
        //kod funkcji 
    }

    public function getTemplateList($uid = null) {

        //kod funkcji 
    }

    ...

}

Konkretnie chodzi o funkcję action, nie chcę używać switcha, wolałbym żeby w jakiś magiczny sposób system sam wiedział jaką funkcję ma wykonać na podstawie np. podania jakiejś zmiennej.


Pozostało 580 znaków

2011-07-21 15:52
1
<?php
function funct1(){
        echo 1;
}

$i=1;

$exec='funct'.$i;
$exec();

?>

Pozostało 580 znaków

2011-07-21 22:07
0

Dzięki :)


Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0