php中采用的模板技术,最好的PHP 5模板技术?

我会问你同样的问题,我会问任何建议Smarty的人:

为什么要将模板语言添加到PHP,这是一种模板语言?

PHP是一种模板语言.我认为人们会忘记或尝试将其视为纯粹的OO语言,which it isn’t.发挥PHP的优势.不要尝试做它不是的东西.

总而言之,很难回答你的问题,因为你没有说你的模板系统有多简单或复杂,即你打算支持哪些功能.

如果您的模板语言相对简单,那么正则表达式可能就是您的选择.然而,这对一些微不足道的案件不起作用.控制结构的嵌套可能是最常见的.在这种情况下,您需要编写某种形式的基本解析器.

让我们说你所有的模板结构都是这样的块:

{:...:}

因为在HTML页面中相对不太可能发生(尽管为了完整性,您需要满足用户确实想要使用这些字符组合的情况.

您需要扫描文件以获取此类表达式并相应地处理它们.正则表达式可用于查找所有但不一定匹配的表达式,例如条件包括例如:

{:if ...:}

Some conditional content

{:endif:}

为什么?因为这:

{:if *some condition*:}

{:if *some other condition*:}

Some other conditional content

{:endif:}

Some conditional content

{:endif:}

与正则表达式匹配不能可靠地完成,因此您需要将文件解析为某种形式的词法树,然后对其进行处理.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值