Mailinglisten-Archive |
Johann-Peter Hartmann wrote: > > [mailto:php-admin_(at)_solix.wiso.Uni-Koeln.DE]Im Auftrag von rik > > --- --- --- > > Fatal error: Call to unsupported or undefined function set_unknowns() in > > php_include/template.inc on line 47 > > --- --- --- > > Zitat PHP3-Handbuch : "In PHP3 müssen Funktionen definiert > sein, bevor man auf sie verweist. In PHP4 ist das nicht > mehr erforderlich. " > > Du mußt schlicht in der template.inc den Abschnitt > > " /* public: set_unknowns(enum $unknowns) > unknowns: "remove", "comment", "keep" > */ > function set_unknowns($unknowns = "remove") { > $this->unknowns = $unknowns; > } " > > _vor_ die Funktion "Template" verschieben. > Dann sollte es laufen. Außerhalb von Klassen kenne ich dieses Verhalten und die Regel. Innerhalb einer Klasse ist es mir neu. Gilt die Regel auch für einen Konstruktor und alle in der Klasse definierten Methoden? Untenstehender Code verursacht mit Win32 Version 3.0.11 auf der Kommandozeile keine Probleme. class foo { function foo($init) { $this->bla($init); } function bla($init) { echo $init; } }; $f = new foo("Emil"); Verhält sich PHP hier inkonsistent, oder ist eine Klasse für den Parser etwas völlig anderes als eine alleinstehende Funktion, weshalb die Reihenfolge von Konstruktor und Methode irrelevant ist? Ulf
php::bar PHP Wiki - Listenarchive