Mam taką klasę:

  1. <?php
  2. class template
  3. {
  4. public $dir = "templates/default/";
  5. public $file;
  6. public $tags;
  7.  
  8. public function __construct($file, $tags = array())
  9. {
  10. $this->file = $file;
  11. foreach($tags as $tag => $tagvalue)
  12. {
  13. $this->tags["{".$tag."}"] = $tagvalue;
  14. }
  15. }
  16.  
  17. public function tag($tags, $value = NULL)
  18. {
  19. if(!isset($value))
  20. {
  21. foreach($tags as $tag => $tagvalue)
  22. {
  23. $this->tags["{".$tag."}"] = $tagvalue;
  24. }
  25. }
  26. else
  27. {
  28. $this->tags["{".$tag."}"] = $tagvalue;
  29. }
  30. }
  31.  
  32. public function display()
  33. {
  34. $tmp = file_get_contents($this->dir.$this->file);
  35. $tmp = str_replace(array_keys($this->tags), array_values($this->tags), $tmp);
  36. $tmp = preg_replace("#\(\.(.*?)\.\)#", "", $tmp);
  37. echo $tmp;
  38. }
  39. }
  40. ?>


Jednak nie potrafię sobie poradzić z tym, aby dodać tam sposób, który ograniczy tworzenie XXX plików .tpl. Chodzi mi o funkcję znaną z phpbb - assign_block_vars, dzięki której możemy w prosty sposób umieszczać wiele kodów html, wykorzystywanych na kilku stronach, w jednym pliku .tpl. Wszystko za sprawą komentarzy:

Kod
<!-- BEGIN costam -->
tutaj kod
<!-- END costam -->


Może mi ktoś podsunąć pomysł jak to wprowadzić do ww. klasy?