HTML格式的PHP变量和循环



page.html

<body>
   <h1>{{HEADING1}}</h1>  {{CONTENT1}}
   <h2>{{NEWSLETTER}}</h2>
   <h1>{{VAR1}}</h1>  {{VAR2}}
</body>

page.php

$HEADING    = 'Heading';
$CONTENT    = '
              <div align="center">
              -- Content goes here --
              </div>
              ';
$NEWSLETTER = 'newsletter content';
$VAR1       = 'Another Sub Heading';
$VAR2       = 'content';
$File       = file('page.html');
print $File;

1>当urlhttp://example.com/page.php执行,所有的{{VARIABLE}}都应替换为$VARIABLE中的值

2>我还想调用HTML中的PHP循环
类似的东西

BEGIN WHILE LOOP
CONTENTS
END

实现这些的最佳方法(或正则表达式)是什么?

以下可用于将变量$HEADING更改为{{HEADING}}

   $File          = file('file.html');
   $FContent      = join("", $File);
   $FileContent   = preg_replace("/{{(.*?)}}/e","@$$1", $FContent);
   print $FileContent;

使用模板引擎怎么样?参见Twig

你必须在你的PHP文件中设置变量,比如这个

return array("variable" => "variable_content");

然后以这种方式在HTML文件中使用它:

Content: {{variable}}

在HTML中,您还可以使用Twig语法进行循环

{% for var in variables %}
   Content: {{var}}
{% endfor %}

您可以在此处使用str_replace:

$File = str_replace("{{HEADING}}",$HEADING,$File);
$File = str_replace("{{CONTENT}}",$CONTENT,$File);
print $File;

相关内容

  • 没有找到相关文章

最新更新