...noch ein paar weitere Fragen zu OOP:
* Wenn ich innerhalb einer Klasse weitere andere Klassen benötige (z.B. eine DB-Abstraktions-, Parser- oder CAPTCHA-Klasse in einer Klasse zum Anzeigen und Eintragen von Kommentaren), wie binde ich diese am besten ein?
So geht es zwar...
class A
{
public $something;
function A()
{
require('AnotherClass.php');
$this->something = new AnotherClass();
}
}
... aber das sieht schon wieder ziemlich nach Spaghetti-Code aus! Das require ist ja, als wäre in function A die Klasse AnotherClass notiert wäre. Und im Hauptprogramm möchte ich die Klasse vielleicht noch nicht pauschal includen, da ich sie nur in ein paar bestimmten Fällen benötige (ja, __autoload() kenne ich, das macht aber doch im Prinzip auch nichts anderes).
* Wie ist es mit globalen Variablen innerhalb von Klassen? Darf man (im Sinne von gutem Programmierstil) innerhalb einer Methode auf $_POST['sonstwas'] zurückgreifen? Oder wie ist es mit globalen Einstellungen die ich in einem Array habe (z.B. $config['foo'] = 'bar')? Darf ich diese mit "global" einbinden oder sollte ich sie immer als Parameter übergeben?
* Wenn ich ein paar Grundfunktionen in einer Datei auslagern will, ist es immer sinnvoll, diese in eine Klasse zu packen und so mit Funktionen::meine_funktion() aufzurufen?
Nochmal Danke!
Mark