Willkommen in der Webstatt Zum Webstatt Blog und Stories
Dustwolf Dustwolf am 27.01.07 22:31

Moin.

<?php

class a {

public $objekt;
public $wort;

function __construct(){
$this->objekt = new b($this);
$this->wort = 'test';
}

}

class b {

function __construct($objekt){
echo $objekt->wort;
}

}

?>


Meine Frage ist: Wie kann ich meine Variable Wort so deklarieren, dass nur das Objekt darauf zugreifen kann? Weil mit protected geht das ja nicht, denn das Objekt ist ja kein Unterobjekt der Class a.

Danke schonmal für alle Antworten. :D
Dustwolf

netcup.de Warum gibt es hier Werbung?
Wasili am 27.01.07 23:03

Nur a oder nur b soll auf wort zugreifen? Oo
Wenn das nur a soll, dann mir private. "Privat". Wenn nur b darauf zugreifen sollte - Warum nicht einfach auch nur in b deklarieren?

Dustwolf Dustwolf am 27.01.07 23:08

Naja, ich sollte dazu vielleicht den Hintergrund etwas erläutern.

Ich bastel mir momentan ein CMS zusammen, das komplett aus Objekten bestehen soll. Dazu habe ich ein zentrales Objekt (System) und in diesem sind wiederum Objekte und Variablen (Templatesystem, Datenbankobjekt, Userdaten, Einstellungen) angelegt.

Es ist also so konstruiert, dass alle Variablen (beispielsweise die Einstellungen) in einem Array im System-Objekt eingetragen sind und die ebenfalls im Systemobjekt angelegten Objekte (Templatesystem, etc) auch auf die Einstellungen zugreifen können sollen, die zentral vorgegeben sind.

Michael_Genf am 28.01.07 12:02

Ich würde den Unterobjekten jeweils eine Referenz auf das Systemobjekt übergeben, so dass sie über das Systemobjekt auf die Einstellungen zugreifen können.
Die Variablen ansich würde ich dann als private oder protected deklarieren

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt