Classe soll Ergebnis in Variable zurück geben

droni

Erfahrenes Mitglied
Hallo,

ich sitze was classen betrifft noch in den Kinderschuhen und komme bei einem
Fremdscript nicht weiter.

Es handelt sich hier um ein Template Script was auch wunderbar funktioniert.
Aber nun verlangt eine Situation, dass das Template nach dem parsen nicht
an den Browser gesendet wird, sondern im PHP weiter verarbeitet werden soll.

Aufgerufen wird das ganze mit:
PHP:
$html = new html;
$html->display_template('template.tpl');


In der Classe steht unter anderem:

PHP:
class html {

	var $data;

	function display_template($filename) {
		$this->show_now($filename);
	}

	function show_now($filename) {
		$this->data = $this->get_template($filename);
		$this->data = $this->parse_template($this->data);
		$this->show($this->data);
	}

Danach kommen die Funktionen die halt das Template bearbeiten.
Weiter unten dann die Show Funktion:

PHP:
	function show ($daten) {
		echo $daten;
	}

Ich möchte in der PHP Datei das ganze umgewandelte Template in einer
Variablen haben.

Habe da schon return $daten; gemacht, aber dann kommt die Meldung:

Catchable fatal error: Object of class html could not be converted to string

Google wirft mir immer wieder "__toString()" um die Ohren, aber ich bekomme
es einfach nicht hin :(


Hoffe jemand weiß Rat.

Vielen Dank!

MfG
droni
 
Return macht auch keinen Sinn weil es nichts gibt an das es returned werden könnte.

Eine von vielen Möglichkeiten wäre z.B. das hier
PHP:
class html {

    var $data;

    function display_template($filename) {
        $this->show_now($filename);
    }

    function show_now($filename) {
        $this->data = $this->get_template($filename);
        $this->data = $this->parse_template($this->data);
        $this->show($this->data);
    }

function returnData($filename){
$this->data = $this->get_template($filename);
$this->data = $this->parse_template($this->data);
return $this->data;
}
.
.
.
$html = new html;
$deineVariable = $html->returnData('template.tpl');
 
Zurück