假设使用标签形式作为模板语法
在解析环节我想到两种实现方式
1. 利用正则获取标签内容,然后将标签进行规则性的替换并使用eval进行解析,解析完成后再用正则进行替换
2. 利用正则获取标签内容,然后将标签进行规则性的替换,替换完成后使用cli执行脚本并返回内容
现在的问题是,不太清楚整个流程和这两种实现方式是否正确,或者有别的方式。
谢谢
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
简单理解一下,是这样的
file.html就是file.php的模板再换个思路是这样的
举个简单的列子给你吧
上面就是一个模版引擎了,看看如何使用
php 使用示例
模版使用示例
摘自Slim:
拿到数据之后要进一步处理还是display就看你自己了
PHP 本身就可看作一個「模板引擎」。
只要:
即可。
如需要得到內容而非直接輸出,只要:
包裝成函數,從功能上看,算不算用 PHP 實現了模板引擎呢?
php模板一般是翻譯型,是把特定的文件翻譯成php或html,然後輸出的是那個文件的結果
php本身可以看作是C语言的模板。。。
楼主说的模板引擎,大抵都是用正则表达式实现的。
{$user_name}--->正则匹配--->
没什么太高深的东西在里面,如果你愿意,直接采用原生模式嵌入到html即可,毕竟正则效率也不是那么高
我很多年前写的c++版本,供参考,实现比较土,编译原理都还给老师了
https://github.com/pi1ot/webapplib/blob/master/waTemplate.h
https://github.com/pi1ot/webapplib/blob/master/waTemplate.cpp