![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Jonas Registriert seit: 03.06.2006
Beiträge: 244
|
Ich schreibe mir grad eine Klasse, welche Singletons faken soll. Bitte keine Diskussion, warum PHP4 und nicht PHP5, es ist einfach so. Jetzt möchte ich der Übsersicht halber eine Singleton-Klasse faken. Bisher sieht das so aus: PHP-Code: So etwas wie Function.caller in JavaScript.
__________________ Applikations-Programmierung: BlitzMax, BlitzPlus Webentwicklung: PHP, (X)HTML, CSS, JavaScript, MySQL |
| | |
| | Nach oben #2 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.516
|
Ähm, wozu brauchst du das? Such vielleicht auch mal nach Singleton PHP4 beim Suchdienst deiner Wahl. Da findet man sicherlich auch das Ein oder Andere, z.B. http://www.weberdev.com/get_example-4014.html |
| | |
| | Nach oben #3 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
Ich krieg immer das grauen bei dem Stichwort global... Das verlinkte Beispiel von Ben ist nicht schlecht, ich habs aber immer über ne statische Klassenvariable gelöst und bei getInstance() einfach nur geschaut, ob die schon gesetzt ist oder noch null und dann entsprechen instanziiert oder den inhalt der klassenvariablen zurückgegeben.
__________________ I did it my way - Senseless-Blog Weihnachtsgeschenk? Schülern helfen - Bodypainting Kalender für 2009 |
| | |
| | Nach oben #5 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
Öhm verdammt, gute frage
__________________ I did it my way - Senseless-Blog Weihnachtsgeschenk? Schülern helfen - Bodypainting Kalender für 2009 |
| | |
| | Nach oben #6 |
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 853
|
Selbst in PHP5 kommst du aus einer statischen Methode einer Basisklasse nicht an den Namen der Klasse (es sei denn, es wurde in den letzten Wochen implemeniert - hab ich aber nichts von mitbekommen). Basti |
| | |
| | Nach oben #8 |
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 853
|
...ich bezog mich auf die ursprüngliche Frage, nicht auf deine Abschweifungen *g Ein statischer Zugriff hat in jedem Fall auch schon in PHP 4 funktioniert. Wann das Schlüsselwort static für Klassen-Attribute eingeführt wurde, weiß ich allerdings nicht. Allerdings komm ich grad nicht drauf, was das mit dem Problem zu tun haben soll. Basti PS: Achso, jetzt seh ich das erst mit der Globalen. Ist natürlich wenig sinnvoll, klar. Aber das eigentliche Problem liegt ja woanders. PPS: War hier schonmal Thema: http://www.phpfriend.de/forum/viewtopic.php?t=56275 Geändert von Basti (04.05.2007 um 17:36 Uhr) |
| | |
| | Nach oben #9 | ||||
| Jonas Registriert seit: 03.06.2006
Beiträge: 244
| Datenbankverbindung, Benutzer-Klasse, Request-Klasse (verarbeitet $_GET, $_POST), ... Eben überall, wo es nur ein Objekt geben soll, damit kein unnützer Speicher benutzt wird. Zitat:
Jo, habs jetzt mit einer static-Variable innerhalb der Funktion gelöst. Hatte das völlig verdrängt. Zitat:
Zitat:
Zitat:
Habs jetzt so gelöst: PHP-Code:
__________________ Applikations-Programmierung: BlitzMax, BlitzPlus Webentwicklung: PHP, (X)HTML, CSS, JavaScript, MySQL | ||||
| | |
| | Nach oben #12 |
| Christian W. Achatz Registriert seit: 05.02.2007 Ort: München
Beiträge: 150
|
Hallo Artemis, ich würde dir hier die Implementierung einer "abstract singleton"-Klasse empfehlen. Damit musst du nicht immer von der Singleton-Klasse ableiten und kannst beliebige Klassen singleton instanziieren. Aussehn kann das so: $ServiceObject = &Singleton::getInstance('MyServiceObject'); Ein Beispiel für eine derartige Implementierung kannst du dir im ZIP-Package unter http://christian.zierpflanzenberatun...mo_package.zip ansehen. Die Klasse ist im Ordner apps/core/singleton/ abgelegt.
__________________ Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> http://adventure-php-framework.org)! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [PHP] thumbnails erstellen - kleine Funktion | Jann Hendrik | Tutorials | 2 | 16.01.2008 10:38 |
| Mit PHP auf Bankdaten zugreifen | Berti | PHP-Programmierung | 17 | 07.11.2006 12:23 |
| [PHP] FTP-Funktionen in PHP nutzen | MrNiceGuy | Tutorials | 0 | 24.05.2006 14:18 |
| unobtrusive JS: 1 funktion auf mehrere elemente | pichfl | JavaScript und AJAX | 2 | 26.02.2006 17:45 |
| Auf den Inhalt des eigenen jar-Archivs zugreifen? | houdini808 | Allgemeine Java-Programmierung | 6 | 18.10.2004 12:32 |