如何创建模板包含任意数量的元素?

时间:2014-01-16 09:12:49

标签: php html templates

我想创建一个由PHP处理的模板。在该处理过程中,'%'符号中包含的所有变量将被相应变量的值替换。

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

问题在于我事先并不知道会有多少个SECTION。 所以在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 个答案:

答案 0 :(得分:0)

我找到了一个公平的解决方案。我会制作一个PHP模板文件而不是HTML。因此,我将初始化核心文件中所有需要的变量,然后使include函数使用所需的模板。所以我将能够在其中进行任何需要的循环。