PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- class tpl
- {
- /*
- * Назначает переменные шаблона
- * @param string $name имя переменной
- * @param string $value значение переменной
- * @return bool true
- */
- public function assign($name, $value)
- {
- $this -> tpl_vars[$name] = $value;
- return true;
- }
- /*
- * Компилирует файл шаблона и записывает
- * результат компиляции в файл.
- * @param string $template имя файла шаблона
- * @return bool
- */
- private function compile($template)
- {
- foreach ($this -> tpl_vars as $name => $value)
- {
- {
- $template = str_replace('{$' . $name . '}', '<?PHP if (isset($this -> tpl_vars["' . $name . '"])) echo("' . $value . '"); ?>', $template);
- }
- }
- }
- /*
- * Отображает скомпилированный шаблон. Если скомпилированный
- * шаблон не найден - производит компиляцию.
- * @param string $template имя файла шаблона
- */
- public function display($template)
- {
- {
- include($template . '.cache');
- }
- else
- {
- if ($this -> compile($template . '.html'))
- {
- $this -> display($template);
- }
- else
- {
- echo 'Произошла ошибка!';
- }
- }
- }
- }
- $tpl = new tpl();
- $tpl -> assign('title', 'Тестируем шаблонизатор');
- $tpl -> assign('link', 'http://php.su');
- $tpl -> assign('name', 'Учи похап!!!11');
- $tpl -> display('template');