Mailinglisten-Archive |
Hall Yannik, Yannik Hampe wrote: > > Ja... was soll ich dazu sagen mhh... > Sagen wir mal vorsichtig: Ich glaube ausser in php hast du noch nicht > "richtig" OOP programmiert. Recht du hast. PHP ist die einzige Skriptsprache mit der ich mich richtig befasse. Turbo Pascal, Delphi, C usw. konnten mich nie wirklich richtig fesseln. Weder in der Schule, noch in der Ausbildung zum Informatikkaufmann. > Eine static Methode ist eine normale Funktion mit Klassenzugehörigkeit. > Sie hat kein $this. Mit anderen Worten: Dein if (empty(this)) ist IMMER true. Das leuchtet mir ein, zumal ich auch eine/zwei "echte" statische Methoden in der Basisklasse habe. > Damit bleibst du in einer Endlosrekursion stecken (Obwohl ich > das jetzt nicht getested habe udn du nur schreibst, das es im > Vergleich lange dauert aber schon funktionier...?). Habs gerade getan. "static" rein, für das Nicht-Vorhandensein eine Ausgabezeile und ab ging die Luzi. Ergebnis war eine "ellenlange" Seite im Browser, die mir kundtat, dass kein $this da ist... Verstehe bloß, warum es dann doch ging... > > Wenn du sowas static machen willst, was durchaus sinnvoll ist, dann > solltest du das so machen: > > class bla > { > private static $connection; > private static getConnection() > { > if (self::$connection ===null) self::$connection > =mysql_connect(..); return self::$connection; > } > public static query(..) > { > $c =self::getConnection(); > mysql_query(.., $c); > } > } Danke fürs Beispiel, werde es mal austesten. > [Multithreading] Jetzt noch nicht und später nicht gleich *g* > Yannik -- Mit freundlichen Gruessen / Kind regards Steffen Kother
php::bar PHP Wiki - Listenarchive