| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |||
| Moderator Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Zitat:
Zitat:
Das kann Method-Chaining bzw. ein fluent Interface sein. Dabei wird nicht zwangs läufig eine 2 methode der ersten klasse aufgerufen. es wird die methode test2() der Klasse aufgerufen die die methode test1() via return zurückgibt. Wenn das $this; ist, nennt man es ein fluent interface: Fluent interface - Wikipedia, the free encyclopedia es wird also immer auf der zurückgegebenen klasse die methode aufgerufen. wenn die methode ein neues objekt einer anderen klasse generiert und zurückgibt, auf dieser.
__________________ robo47.net - Blog, Codeschnipsel und mehr | | ||
| | |
| | |
| Moderator Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Definiere doch in der basisklasse einfach ein pre_init() und post_init und ruf es vom konstruktur immer auf, wenn die kindklasse es nicht hat, wird das (leere?) der elternklasse aufgerufen oder mach die methoden in der elternklasse abstrakt dann müssen die kinder sie wenn auch leer implementieren.
__________________ robo47.net - Blog, Codeschnipsel und mehr | |
| | |
| | ||
| Erfahrener Benutzer Registriert seit: 21.12.2009
Beiträge: 379
PHP-Kenntnisse: Fortgeschritten ![]() | Zitat:
Da sind sogar Beispiele dabei... Zu deinem init()-Problem gibt es simple Lösungen: abstrakt definieren (alt.: Interface) (erzwingt Implementation) oder als "leere" Methode in der Elternklasse implementieren. Rufst du init() auf einem Kind-Objekt auf, das eine init()-Methode hat wird die des Kind-Objekts ausgeführt, fehlt die Methode wird die des Eltern-Objekts ausgeführt. Das sind aber eigentlich OO-Grundlagen - du solltest dir also Zeit nehmen und dich in die Doku einlesen.
__________________ actra.development - Schwabstr. 2 - 70825 Münchingen www.actra.de/velopment/ - eMail: php.de@actra.de Zend Certified Engineer for PHP5 | |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 21.12.2009
Beiträge: 379
PHP-Kenntnisse: Fortgeschritten ![]() | Nirgends. Late Static Binding wurde eben erst mit 5.3 eingeführt, um genau solche Fälle abzudecken. Wobei ich immer noch nicht verstehe, wozu du überhaupt eine statische Methode verwendest. Benutz' ne Factory, definier' den Konstruktor in der Elternklasse final und lass den (pre|post)init ausführen.
__________________ actra.development - Schwabstr. 2 - 70825 Münchingen www.actra.de/velopment/ - eMail: php.de@actra.de Zend Certified Engineer for PHP5 |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| statische Eigenschaft einer unbekannten Klasse aufrufen | Zergling-new | PHP-Fortgeschrittene | 30 | 05.01.2010 20:04 |
| Statische Methoden oder Singleton Klasse ? | lopelz | PHP Tipps 2009 | 7 | 30.12.2009 14:46 |
| Klasse für Objekteigenschaft erzeugen? | Asipak | PHP-Fortgeschrittene | 25 | 30.05.2009 19:45 |
| [Erledigt] Auf erst zur laufzeit bekannte statische Methode zugreifen? | Lockhead | PHP Tipps 2009 | 14 | 30.04.2009 11:15 |
| Methode einer anderen Klasse aufrufen | Luka | PHP-Fortgeschrittene | 15 | 09.11.2008 14:19 |
| statische Variable in Methode | tinchen | PHP Tipps 2008 | 5 | 21.12.2007 20:54 |
| Ermitteln ob Methode geerbt wurde oder nicht? | MaMo-Net | PHP Tipps 2007 | 23 | 14.04.2007 00:28 |
| String-Parser Klasse - was muss rein? | Matze | PHP Tipps 2007 | 2 | 08.04.2007 22:14 |
| Auf static Methode von variabler Klasse zugreifen | Riks | PHP Tipps 2007 | 11 | 16.03.2007 15:08 |
| Singleton besser als komplett statische Klasse ? | Cmon | PHP-Fortgeschrittene | 4 | 13.06.2006 00:34 |
| methode in klasse aus einer anderen starten | GELight | PHP Tipps 2006 | 10 | 03.06.2006 11:39 |
| PHP 5 : Methode außerhalb der Klasse definieren | Unknown | PHP Tipps 2006 | 9 | 23.05.2006 11:31 |
| problem mit einer methode in einer klasse | PHP Tipps 2007 | 4 | 18.12.2005 16:14 | |
| PHP5: Klassenattribut für statische Methode, mit Vererbung | PHP-Fortgeschrittene | 9 | 24.05.2005 09:35 | |
| OOP: offizielle php funktion als methode einer klasse ... | PHP Tipps 2004 | 4 | 17.09.2004 04:24 | |