phpbar.de logo

Mailinglisten-Archive

[php] Neues Objekt mit variabler Anzahl Argumente

[php] Neues Objekt mit variabler Anzahl Argumente

Andreas Ahlenstorf lists at ahlenstorf.ch
Fre Aug 4 13:23:20 CEST 2006


Am 04.08.2006 um 13:13 schrieb Sebastian Mendel:

> kurz: du willst eine Methode/Funktion mit unterschiedlicher Anzahl an
> Parametern aufrufen können?

Nein. Das ist nicht das Problem.

class foo {

     public function __construct ($param1, $param2) { }

}

class bar {

     public function __construct ($param1) { }

}

Jetzt will ich die Klassen so laden können:

$object = load('foo', array($param1, $param2));

Oder eben:

$object = load('bar', array($param1));

Und ich will in load() nicht sowas schreiben müssen:

function load ($class, $args = array())
{
     switch ($class)
         case 'foo':
             return new foo($args[0], $args[1]);
             break;
         case 'bar':
             return new bar($args[0]);
             break;
     }
}

Ich kann jetzt hingehen, und halt __construct() $args mitgeben, aber  
ich hätte halt lieber die ausgeschriebenen Parameter, damit ich sie  
mit einem Interface erzwingen kann. Da bliebe sonst nur noch eine  
statische Methode, welche die Klasse mit den richtigen Parametern  
aufruft. Aber das saugt alles, wenn ich es einfacher haben kann ;)

Gruss,
Andreas


php::bar PHP Wiki   -   Listenarchive