ホームページ  >  記事  >  バックエンド開発  >  模板引擎 - 一个php模板的问题

模板引擎 - 一个php模板的问题

WBOY
WBOYオリジナル
2016-06-06 20:52:26916ブラウズ

我写了一个模板类用来将 .html文件中的内容标签过滤成正常的php标签,然后输出。

目前读取.html用的file_get_contents,然后正则过滤都很正常,最后输出到页面里变成了纯字符串,类似

<?php include(Template::getfile('header'));
?>
这里是html...

请问我要如何让它执行?

PS:过去我用的方法是将这些输出的字符串保存为一个.php的文件,然后include这个文件。现在环境变了,不支持目录IO,所以我想直接执行它,是否可行?

回复内容:

我写了一个模板类用来将 .html文件中的内容标签过滤成正常的php标签,然后输出。

目前读取.html用的file_get_contents,然后正则过滤都很正常,最后输出到页面里变成了纯字符串,类似

<?php include(Template::getfile('header'));
?>
这里是html...

请问我要如何让它执行?

PS:过去我用的方法是将这些输出的字符串保存为一个.php的文件,然后include这个文件。现在环境变了,不支持目录IO,所以我想直接执行它,是否可行?

可以用eval来执行字符串,下面的my_template_parser是你自己的模板函数。但是注意eval的执行效率很低而且可能会有内存问题,所以只建议本地用来测试,正式使用还是替换成php文件再include的好。

eval(my_template_parser(file_get_contents('my-template.html')));
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。