| | | | |
| |||||||
| 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: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Weil du klar und deutlich angegeben hast, dass die Methode save ein Objekt vom Typ AX_Model_Model als Parameter übergeben bekommen wird - und sie nun aber doch davon abweichend zu implementieren versuchst, nämlich mit einem Parameter vom Typ Application_Model_Status.
__________________ RGB is totally confusing - I mean, at least #C0FFEE should be brown, right? |
| | |
| | |
| Moderator Registriert seit: 11.05.2008
Beiträge: 6.268
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Hallo, PHP kennt zur Zeit des Parsens deine Klassenabhängigkeiten aber nicht. Ein Interface wäre da deutlich sinnvoller als Type Hint. Mit Interfaces hat es das ZF aber leider nicht so. Workaround: PHP-Code:
__________________ "Nuschel ich?" - "Was?" |
| | |
| | |
| Neuer Benutzer Registriert seit: 27.12.2010
Beiträge: 19
PHP-Kenntnisse: Fortgeschritten ![]() | Aha... Wieder was dazugelernt... Habe das jetzt so gelöst, dass das Argument der Application_Model_StatusMapper#save(...) auch vom Typ AX_Model_Model ist. Aber es ist dirty... Wenn ich anstatt von abstrakten Klassen Interfaces verwende, dürfte ich wohl auch nicht viel gewinnen. Das Problem bleibt das gleiche. Außerdem ist eine abstrakte Klasse (die auch ein paar konkrete Methoden enthält und vererbt) hier keine schlechte Lösung, finde ich. Nachtrag: Ja, der Workaround ist gut, danke! PHP-Code: Geändert von automatix (27.12.2010 um 19:50 Uhr). |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 02.09.2009
Beiträge: 1.019
PHP-Kenntnisse: Fortgeschritten ![]() | Beim Überschreiben müssen die Methodensignaturen übereinstimmen. Die Parameter gehören auch zur Signatur. Daher: Anderer Parameter = andere Signatur = kein Überschreiben.
__________________ Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() | Überladen und Überschreiben meint hier das gleiche. Was mquadrat gesagt hat, ist universell richtig: Bei unterschiedlicher Methodensignatur gibt es keine Überladung, da es sich um 2 unterschiedliche Methoden handelt, das gilt in allen OO Sprachen gleichermassen. Genauso kann man keine 2 Funktionen mit gleicher Methodensignatur im global scope deklarieren, das wird auch mit einem Fehler quitiert.
__________________ Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot. |
| | |
| | ||
| Neuer Benutzer Registriert seit: 27.12.2010
Beiträge: 19
PHP-Kenntnisse: Fortgeschritten ![]() | "Überladen" und "Überschreiben" sind zwei ganz verschiedene Paar Stiefel. Auch hier. Zitat:
Das Problem ist hier aber ein designtechnisches. Mir ist ein ein logischer Fehler unterlaufen: das, was ich anfangs versucht habe, geht in keiner Programmiersprache, denn die implementierende Methode muss die zu implementierende Methode nicht nur überladen (was in PHP eh nicht geht), sondern überschreiben. | |
| | |
| | ||
| Erfahrener Benutzer Registriert seit: 02.09.2009
Beiträge: 1.019
PHP-Kenntnisse: Fortgeschritten ![]() | Zitat:
__________________ Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de | |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Tabellen Problem mit Funktion | Schadstoff | PHP Tipps 2009 | 5 | 04.06.2009 20:12 |
| clearInterval problem (in funktion) | railon | JavaScript, Ajax und mehr | 3 | 27.05.2009 00:35 |
| JS: Einführung - Javascript im Schichtenmodell | nikosch | Tutorials | 4 | 11.04.2009 17:06 |
| Problem: UPDATE-Abfrage in externer Funktion | cheaterfritz | PHP Tipps 2009 | 5 | 03.04.2009 14:56 |
| [Erledigt] Problem mit der Funktion fopen() | robat | PHP Tipps 2008 | 6 | 23.11.2008 12:29 |
| Problem beim Aufruf einer Funktion | elwood | PHP Tipps 2008 | 6 | 30.08.2007 12:54 |
| Problem mit Funktion | Kein Genie | PHP Tipps 2007 | 33 | 12.03.2007 15:10 |
| problem mit einer Funktion | LP | PHP Tipps 2006 | 9 | 27.06.2006 12:56 |
| (schnellere) Funktion zum Zusammenfassen von CSS | PHP-Fortgeschrittene | 21 | 08.08.2005 16:47 | |
| [Erledigt] Problem bei Massenmails versenden mit der Funktion mail | PHP-Fortgeschrittene | 3 | 19.01.2005 13:36 | |
| problem mit der "die" funktion | aircrash | PHP Tipps 2005 | 2 | 08.01.2005 19:44 |
| Problem mit Umsetzung einer Funktion | Datenbanken | 1 | 20.12.2004 14:37 | |
| problem mit update funktion | aircrash | PHP Tipps 2004-2 | 3 | 17.11.2004 16:55 |
| Problem mit Funktion | PHP Tipps 2004 | 3 | 17.07.2004 14:30 | |
| Problem mit mail() - Funktion | PHP Tipps 2004 | 2 | 06.07.2004 18:21 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| php abstrakte funktion, zend vererbung, php methodensignatur, php abstrakte funktionen, php vererbung signatur ändern, php funktionen überladen, abstrakte funktion, php funktion überladen, php funktionen überladen workaround, abstrakte funktion parameterliste, php vererbung funktion, php instanceof vererbung, parameter vererbung php 5, methode überschreiben anderen parametern delphi, js abstrakte funktionen, php abstrakte funkton überschreiben, methodensignatur vererbung, php function vererbung, abstrakte funktionen php, php vererbung überschreiben |