SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Entwicklung und Softwaredesign

PHP Entwicklung und Softwaredesign Hier können strukturelle (Programmier-) Konzepte diskutiert und Projekte vorgestellt werden

 
 
Themen-Optionen Ansicht
  #1  
Alt 08.01.2011, 16:30:57
elkmod elkmod ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 24
Beiträge: 45
elkmod befindet sich auf einem aufstrebenden Ast
OOP Zugriff auf Objekte fremder Klassen

Hallo zusammen.

Ich bin gerade dabei ein Framework zu schreiben, jedoch habe ich ein kleines Problem bei der objektorientierten Umsetzung des Ganzen.

Ich versuche mal kurz das Problem zu umreißen:
Es gibt eine Klasse BaseObject, von der alle anderen Klassen bis auf die Logs abgeleitet werden. Das BaseObject verfügt über einen Konstruktor, in dem die Log-Datei geöffnet wird, natürlich alles objektorientiert
PHP-Code:
$this->error_log = new Log("logs/error.log"); 
Das Ganze soll dazu dienen, dass später aus jedem anderen Objekt durch den Aufruf von
PHP-Code:
$this->error_log->add(Fehlermeldung); 
auf das Log-Objekt zugegriffen werden kann. Dazu ist es nützlich ein Zentrales Log-Objekt zu erzeugen, statt bei jeder Instanziierung ein neues. Beim recherchieren bin ich dabei auf die Singleton-Variante gestoßen, bei der das Objekt, soweit ich verstanden habe, nur einmal erzeugt wird und dann immer über obj->getInstance() darauf zugegriffen wird.

Die Klassen sind wie folgt aufgebaut:

Code:
BaseObject
  Config
  Controller
  Page

Log
  ErrorLog
  UserLog

Client
Wenn nun im Konstruktor von BaseObject ein Objekt der Klasse ErrorLog instanziiert wird, wie kann ich dann in Unterklassen von BaseObject auf das gleiche Objekt zugreifen ohne ein Neues erzeugen zu müssen?

Hier noch der Konstruktor von BaseObject
PHP-Code:
public function __construct()
{

  
$this->client = new Client();
  
$this->error_log LogFile::getInstance("logs/error.log");


Der Parameter bei getInstance ist da, weil das Objekt ja mindestens einmal erzeugt werden muss. Meine Frage ist jetzt, wie genau diese Funktion getInstance($path) aussehen muss, damit erst geprüft wird, ob bereits ein Objekt der Klasse existiert und dieses ggf. zurückgegeben oder erzeugt wird.
__________________
MfG Dominic

Geändert von elkmod (08.01.2011 um 16:36:13 Uhr) Grund: Rechtschreibfehler
Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
In einer Klasse auf andere Klassen zugreifen ghost120 PHP Entwicklung und Softwaredesign 7 06.03.2010 22:06:27
dynamisch Objekte von Klassen anlegen floorball92 PHP für Fortgeschrittene und Experten 6 06.04.2009 13:22:19
Abfrage der SessionID auf fremden Server? d4ron PHP für Fortgeschrittene und Experten 5 06.07.2008 17:03:47
Mit ajax auf Klassen zugreifen Valentin PHP für Fortgeschrittene und Experten 0 27.04.2006 15:14:47
Zugriff auf andere Domain Raketenmann PHP Grundlagen 2 15.06.2004 11:37:47


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:51:02 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.


© 2001-2018 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt