Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Помогите с кодом шаб.сис


Автор: WantedFan 11.7.2008, 12:30
Всем привет. Как то я надыбал в сети код простой шаблонной системы...

вот её код:

index.php
Цитата

<?php

require_once 'template.class.php';

$tpl->loadtemplate('main.tpl'); //Файл шаблонна
$tpl->set('{title}','Ваш сайт'); //Это заголовок страницы
$tpl->set('{module}',$module); // Это наш {module}
$tpl->tpl_parse(); //Парсим
print $tpl->template; //Выводим нашу страничку

$module = ""; //Это относиться к {module} тоесть ниже вы можите написать функцию мода либо прилепить файл!


main.tpl
Цитата

<html>
<title>{title}</title>
{module}
</html>

template.class.php
Цитата

<?php
class parse_class
    {
    var $vars     = array();
    var $template;

    function loadtemplate($tpl_name)
      {
      if(empty($tpl_name) || !file_exists($tpl_name))
        {
        return false;
        }
      else
        {
        $this->template  = file_get_contents($tpl_name);
        }
      }
    function set($key,$var)
      {
      $this->vars[$key] = $var;
      }
    function tpl_parse()
      {
      foreach($this->vars as $find => $replace)
             {
             $this->template = str_replace($find, $replace, $this->template);
             }
      }
    }
$tpl = new parse_class;
?>


А сталкнулся с такой проблеммой как подключение куска шаблона module.tpl {module}
Как правильно прописать путь к этому файлу в index.php ?

Вот с этой строчкой у меня проблеммы
Цитата

$module = ""; //Это относиться к {module} тоесть ниже вы можите написать функцию мода либо прилепить файл!

Автор: Feldmarschall 11.7.2008, 12:57
Это плохой класс. 
Он не работает с блоками, а значит, абсолютно нежизнеспособен.

Добавлено через 3 минуты и 33 секунды
Гда-то с пол-года назад здесь был пример прекрасного шаблонизатора - буквально строк 30 кода, но с блоками.
никак не могу его с тех пор найти.

Автор: WantedFan 11.7.2008, 16:08
мм...может есть другой вариант ?? Пускай и подленее..

Автор: Feldmarschall 11.7.2008, 17:21
deleted

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)