2014-01-16 2 views
0

Я хотел бы создать шаблон для обработки PHP. Во время этой обработки все переменные, включенные в знаки «%», будут заменены значением соответствующей переменной.Как создать шаблон содержит произвольное количество некоторых элементов?

<h1>%HEADER%</h1> 
<h2>%SECTION_HEADER_1%</h2> 
    <p>%SECTION_CONTENTS_1%</p> 
<h2>%SECTION_HEADER_2%</h2> 
    <p>%SECTION_CONTENTS_2%</p> 
... 

Проблема в том, что я не знаю заранее, сколько будет СЕКЦИЙ. Так в PHP Я хотел бы создать переменные:

$header = 'Article title'; 

$section = array(
    '1' => array(
    'head' => 'Header 1', 
    'body' => 'Long text 1'), 
    '2' => array(
    'head' => 'Header 2', 
    'body' => 'Long text 2') 
); 

И результирующий HTML будет содержать автоматически повторяющиеся необходимые детали. я могу это сделать, если я буду использовать вложенные шаблоны:

<h1>%HEADER%</h1> 
%ARTICLE_BODY% 

Где %ARTICLE_BODY% будет представлять собой еще один шаблон (ы). Но этот подход выглядит слишком сложно.

Как я могу сделать это правильно?

+1

Я бы пошел с вложенным шаблоном. Потому что это будет более гибким для будущих расширений. Другой способ (но, хуже всего, на мой взгляд) состоит в том, чтобы сначала создать внутреннюю часть в php и передать вам шаблон, но это в основном то же самое. Хуже того, поскольку он помещает жестко закодированные теги в ваш php. –

ответ

0

Я пришел к справедливому решению. Я бы сделал файл шаблона PHP вместо HTML. Поэтому я инициализирую все необходимые переменные в основном файле, а затем сделаю функцию include, чтобы использовать необходимый шаблон. Поэтому я смогу делать любые петли, необходимые в нем.

Смежные вопросы