За последние 24 часа нас посетили 8933 программиста и 486 роботов. Сейчас ищут 166 программистов ...

шаблонизатор, рендер в переменную.

Тема в разделе "Решения, алгоритмы", создана пользователем 3Dinterface, 3 фев 2012.

  1. 3Dinterface

    3Dinterface Активный пользователь

    С нами с:
    2 фев 2012
    Сообщения:
    13
    Симпатии:
    0
    Приветствую всех.
    Решил попробывать написать шаблонизатор.
    Вот что пока получилось.
    Код (Text):
    1.  
    2.  class templater{    
    3.     //переменная с данными
    4.      public $data=array();
    5.  
    6.      // конструктор шаблонизатора
    7.      function templater($dat){
    8.          $this->data=$dat;
    9.      }
    10.      
    11.     // метод будет возвращать переменные для шаблона
    12.      public function __get($name)
    13.      {        
    14.         if (array_key_exists($name, $this->data)) {
    15.             return $this->data[$name];
    16.         }
    17.      }    
    18.      // метод в котором происходит рендеринг
    19.      public function renderFile($file){    
    20.          include $file;
    21.      }
    22.  }
    соответственно используется это всё так.
    Код (Text):
    1.  $t=new templater( array("var1"=>"Вася", "var2"=>"на работу")  );
    2.    $t->renderFile("test.php");  
    в шаблоне
    Код (Text):
    1.  
    2.    <h1> Офигенный САЙТ </h1>
    3.   <br>
    4.   <?=$this->var1 ?> идёт <?=$this->var2 ?>
    На экране выплёвывает клёво конечно.
    Вопрос как теперь отрендерить это в переменную, чтобы кэшировать потом можно было.
    Есть какие нибудь идеи, или предложения ??
     
  2. AndreJM

    AndreJM Активный пользователь

    С нами с:
    25 янв 2012
    Сообщения:
    522
    Симпатии:
    0