Hallo,
ich bin seit einigen Tagen dabei, mir eine schöne Template Klasse zu schreiben. Alles funktinoiert soweit auch, aber ich würde gern meine pparse-Methode anders gestalten. Im Moment nutze ich dazu eine foreach Schleife: (Das Template habe ich Teils selber geschrieben, Teils ein wenig geschaut, wie andere Templates es machen, etwas übernommen, was mir gut erschien. In ner vorigen Version gab es das mit den Handlen noch nicht, die hab ich von dem phpbb Template)
Alles anzeigen
$this->left_delimiter ist {$ und $this->right_delimiter ist gleich }
Mich würde gern interessieren, wie 'große' Template Klassen das machen, leider werd ich bei dem Code Gewirr von vLib-Template oder Smarty überhaupt nicht schlau *gg*
Wie würdet ihr die Methode pparse schreiben?
Gruß,
David
ich bin seit einigen Tagen dabei, mir eine schöne Template Klasse zu schreiben. Alles funktinoiert soweit auch, aber ich würde gern meine pparse-Methode anders gestalten. Im Moment nutze ich dazu eine foreach Schleife: (Das Template habe ich Teils selber geschrieben, Teils ein wenig geschaut, wie andere Templates es machen, etwas übernommen, was mir gut erschien. In ner vorigen Version gab es das mit den Handlen noch nicht, die hab ich von dem phpbb Template)
Quellcode
- /**
- * prints out the parsed template
- *
- * @access public
- * @param string $handle hash to identify the template
- * @return boolean
- */
- function pparse($handle)
- {
- if (!$this->loadfile($handle))
- die("Template->pparse(): Couldn't load template file for handle $handle");
- $this->_temporary_data[$handle] = $this->uncompiled_code[$handle];
- foreach ($this->_tpldata as $key => $value)
- {
- $this->_temporary_data[$handle] = str_replace($this->left_delimiter.$key.$this->right_delimiter, $value, $this->_temporary_data[$handle]);
- }
- $this->compiled_code[$handle] = $this->_temporary_data[$handle];
- echo $this->compiled_code[$handle];
- $this->_tpldata = array();
- return true;
- }
$this->left_delimiter ist {$ und $this->right_delimiter ist gleich }
Mich würde gern interessieren, wie 'große' Template Klassen das machen, leider werd ich bei dem Code Gewirr von vLib-Template oder Smarty überhaupt nicht schlau *gg*
Wie würdet ihr die Methode pparse schreiben?
Gruß,
David