Шаблонный движок: Включить - PullRequest
0 голосов
/ 04 декабря 2010

Я создаю свой собственный шаблонизатор с использованием PHP. Основная идея заключается в том, что для каждой страницы (видимой для пользователей) существует уникальный файл шаблона с расширением HTML. Например ...

users-list.php => users-list.html

profile.php => profile.html

about-us.php => about-us.html

Я только что сделал комментарии доступными в файлах шаблонов (фактически HTML). Комментарии видны перед обработкой, поэтому реальный клиент их не увидит, а разработчик. Синтаксис {* foo *}, и он составлен с использованием регулярных выражений. Теперь мне нужно что-то вроде ...

{include "header.html"}

Я не знаю, как написать это, используя код, но, имхо, мне нужно что-то вроде ...

1) Совпадение всех {включая «xxx»},

2) Из совпадений взяла строку между "и",

3) Загрузить содержимое файлов в виде строк и добавить в правильное место.

1 Ответ

1 голос
/ 04 декабря 2010

что-то вроде

 preg_replace_callback(
     '~{include "(.+?)"}~', 
     function($m) { return file_get_contents($m[1]) }, 
     $str);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...