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