Eingreifen in Klassen Abläufe

lycoos
Hi,

ich habe mal wieder eine Frage! Und zwar möchte ich wissen wie ich am besten in eine Klasse eingreifen kann. Also ich mache mal ein Beispiel.


Ich habe eine Klasse News. Diese Klasse ließt alle News aus der Datenbank und gibt sie aus. Die Newsklasse sieht wie folgt aus.


php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:

<?php
class news {

protected $news true;
private $var bla
public $for,
public $bar,


public function getNews('Var1','Var2') {

$this->db->getMysql('Select.......');

//Ab hier wird alles verarbeitet

}


public function parse_news('$var')
{

$this->Self->news parse_bbcoce('news');

}
}


Das ist also eine schematische Darstellung einer Newsklasse. Nun habe ich aber die Newsklasse geschrieben und möchte eine Commentklasse hinzufügen. Diese soll es ermöglichen Kommentare abzugeben zu den News.

Nun ist meine Frage wie würdet ihr es machen, dass die Newsklasse nicht geöffnet werden muss. Aber trotzdem die Comments im selben TPL wie die News zu sehen sind.

mfg

Felix
xundy
was in deinem Template zu sehen ist hängt ja nur indeirekt mit deiner Klasse zusammen, sondern eigentlich ja nur von deinem php-Code und da kannst du ja so viele Klassen includen wie du willst, bevor du eine Ausgabe machst.

Also solltest du dein Problem mal etwas mehr spezifizieren


mfg
lycoos
Ich will praktisch ähnlich wie beim WCF Klassen verändern oder erweitern ohne dass ich in den Quellcode verändern muss
Also ich will praktisch die Newsseite erweitern ohne den Quellcode zu öffnen. Sprich ich will in den Ablauf der Newsclass eingreifen.


Ich habe mir jetzt vollgendes Überlegt.


Am einfachsten wäre es doch, wenn ich die Newsclass aus einer Klasse Modul extendiere.

Ganz am Anfang steh die Class New. die ist aus der Class Modul extendiert
Die Class Modul aus der ich die Newsclass extendiere, soll in der Datenbank nach passenden Plugins suchen. Wenn er was gefunden lädt er eine neue Instanz der Commentclass, denn ich habe die Commentclass als Plugin für die Newsclass eingetragen. Diese Commentclass ist dann extendiert aus der Newsclass. So müste ich doch eigentlich in der Commentclass die Sachen aus der Newsclass bearbeiten/erweitern können und dabei auch noch auf andere Sachen zugreifen. Ich hoffe man kan nes verstehen....


lycoos