Mailinglisten-Archive |
Hallo Hannes, Am Samstag, 13. Oktober 2007 schrieb Hannes H.: > Guten Abend, Wissende! willkommen in der PHP-Sekte! :-D > Ich möchte für eine Gruppe von Klassen vorgeben, dass sie eine > bestimmte Methode implementieren müssen - wozu es zwei Möglichkeiten > gibt: > > a) Interface > b) abstrakte Klasse die abgeleitet wird > > Ich möchte allerdings nur vorgeben, dass die Klassen diese bestimmte > Methode besitzt, allerdings möchte ich nicht die Parameter vorgeben. > > Gibt es hierfür irgend eine Möglichkeit? Mir fällt leider nichts ein ich würde mal sagen, daß die Dokumentation einfach unzureichend ist. Mit Variante a), die Schnittstellenlösung, solltest Du mindestens weitgehend Dein Ziel erreichen. Als Beleg: "Any class implementing the interface must define each method that is declared in the interface, and each method must have at least the parameters identified in their interface definitions. It may have more parameters as long as they are optional, but it cannot have less." Zitiert aus: http://www.developer.com/lang/php/article.php/3604111 Außerdem lies Dir mal folgende Seite durch: http://www.professionelle-softwareentwicklung-mit-php5.de/erste_auflage/oop.foundations.interfaces.html Da wird die Funktion in der Schnittstelle ohne Parameter definiert, später aber mit Parameter verwendet. Das müßte also auch mit mehreren Parametern funktionieren. Ich habe es jetzt nicht selbst getestet, gehe aber aufgrund des obigen Zitats davon aus. :-) Viele Grüße, Lutz
php::bar PHP Wiki - Listenarchive